IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Fonction qui ne fonctionne que lorsqu'il y a un Alert.


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Par défaut Fonction qui ne fonctionne que lorsqu'il y a un Alert.
    Bonjour,

    Tout est dans le titre, ah non je rajouterai que je suis au bord du craquage .

    J'ai une page qui affiche un tableau dont les entête peuvent être trié grâce a un script (cf : http://www.javascripttoolbox.com/lib/table/source.php).

    Ce tableau peut être régénère en AJAX grâce à des filtres que j'ai mis en place :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    /*
    	Fonction qui récupère les valeurs des filtres (select)
    	et utilise la page tableau_equipe.php pour rafraîchir la liste des équipes
    */			
    function tableau_equipes(){
    	var xhr = getXhrFiltre();
    	xhr.onreadystatechange = function(){
    		if(xhr.readyState == 4 && xhr.status == 200){
    			leselect = xhr.responseText;
    			document.getElementById('liste_equipe').innerHTML = leselect;
    		}
    	}
     
    	xhr.open("POST","tableau_equipe.php",true);
    	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
     
    	// le type d'équipe
    	sel_type = document.getElementById('type');
    	type = sel_type.options[sel_type.selectedIndex].value;
     
    	// l'id du pays
    	sel_pays = document.getElementById('nation');
    	nation = sel_pays.options[sel_pays.selectedIndex].value;
     
    	// le nom du pays ou l'abregé contient
    	like = document.getElementById('recherche_equipe').value;
    	//like ='';
    	//alert("type="+type+"&nation="+nation+"&like="+like);
     
    	xhr.send("type="+type+"&nation="+nation+"&like="+like);
     
    	//On fait appel à cette fonction (table.js) afin de permettre le tri sur le tableau créé via AJAX (tableau_equipe.php)
    	alert("1");
    	Table.auto();
    }
    Cependant lorsque le tableau est rechargé avec AJAX il ne peut être trié que lorsque je met une alert avant l'appel à la fonction Table.auto();
    Si je met l'alert après l'appel a Table.auto(); le tableau ne peut être trié.

    Auriez vous une idée qui puisse me guider vers la lumière ?

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    ton ajax est assynchrone ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    ton ajax est assynchrone ?
    Ahhh..... Pas pensé à cela merci.
    Par contre en étant en mode synchrone les filtres ne fonctionnent plus .
    Je vais chercher un peu avant de mettre le topic en résolu .

    Merci à toi.

  4. #4
    Membre Expert
    Homme Profil pro
    CTO
    Inscrit en
    Avril 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : CTO
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 362
    Par défaut
    La réponse est dans le callback

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Avril 2005
    Messages : 127
    Par défaut
    Citation Envoyé par Antjac Voir le message
    La réponse est dans le callback
    Qu'est ce donc que le callback ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    en fait tu attribues le resultat en innerHTML ...
    le js n'est pas interprété ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre Expert
    Homme Profil pro
    CTO
    Inscrit en
    Avril 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : CTO
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 362
    Par défaut
    Citation Envoyé par @po©alypse Voir le message
    Qu'est ce donc que le callback ?
    Le callback est un événement JS qui se déclenche quand l'appel Ajax retourne un résultat.
    Cela permet d'être sur que le résultat est bien arrivé dans le cas de requêtes asynchrone (le A de AJAX)

    http://www.developertutorials.com/le...ction-2641.php

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 11/11/2011, 04h23
  2. [AJAX] [XMLHttp][IE]Fonction qui ne fonctionne qu'une seule fois
    Par narnou dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 13/07/2007, 11h16
  3. Réponses: 3
    Dernier message: 11/04/2007, 13h18
  4. Réponses: 2
    Dernier message: 17/03/2007, 02h36
  5. [Javascript] Fonction qui ne fonctionne pas sous Opera et Safari
    Par frechy dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 20/02/2007, 10h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo