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

jQuery Discussion :

Conflit jQuery UI et Ajax


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de pi-2r
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 487
    Par défaut Conflit jQuery UI et Ajax
    Bonsoir,

    je suis actuellement bloqué sur un problème de conflit entre du jquery et de l'Ajax (j'ai regardé la page officiel de Jquery pour résoudre le conflit, mais rien ne se passe).

    Dans ma page, j'ai une liste déroulante, qui me permet de choisir des personnages (via une fonction Ajax). Suivant le personnage choisi, une nouvelle liste déroulante apparaît (via une nouvelle fonction Ajax) pour laissé place à un système de drag and drop -qui normalement devrait marché....-
    mon code de sélection des joueurs est le suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <p>Votre Héro :
     
        <select name='systeme_jeux' id='systeme_jeux' onchange='hero()' class="validate[required]" >
                <option value = "">Choisissez votre hero</option>
                <option value="1">Elfe/option>
                <option value="2">Orc</option>
                <option value="3">nain</option>
                <option value="4">humain</option>
        </select>
     
         <div id='choix_des_arme' style='display:inline'>
        </div>
    Sachant que la la balise 'choix_des_arme', il y a une autre liste déroulante qui apparaît via le code suivant (supprimer pour plus de lisibilité )

    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    <script type='text/javascript'>
    			function getXhr()
                            {
                                    var xhr = null;
    				if(window.XMLHttpRequest) // Firefox et autres
    				   xhr = new XMLHttpRequest();
    				else if(window.ActiveXObject){ // Internet Explorer
    				   try {
    			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
    			            } catch (e) {
    			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
    			            }
    				}
    				else { // XMLHttpRequest non supporté par le navigateur
    				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    				   xhr = false;
    				}
                                    return xhr;
    			}
    			/**
    			* Méthode qui sera appelée sur le click du bouton
    			*/
                            function hero()
                            {
    				var xhr = getXhr();
    				// On défini ce qu'on va faire quand on aura la réponse
    				xhr.onreadystatechange = function()
                                    {
    					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    					if(xhr.readyState == 4 && xhr.status == 200)
                                            {
    						leselect = xhr.responseText;
    						// On se sert de innerHTML pour rajouter les options a la liste
    						document.getElementById('choix_des_armes').innerHTML = leselect;
    					}
    				}
     
    				// Ici on va voir comment faire du post
    				xhr.open("POST","inc/choix_heroe.php",true);
    				// ne pas oublier ça pour le post
    				xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    				// ne pas oublier de poster les arguments
    				// ici, l'id de l'auteur
    				sel = document.getElementById('systeme_jeux');
    				idnote = sel.options[sel.selectedIndex].value;
    				xhr.send("idnote="+idnote);
    			}
     
    			function arme()
                            {
    				var xhr = getXhr();
    				// On défini ce qu'on va faire quand on aura la réponse
    				xhr.onreadystatechange = function()
                                    {
    					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    					if(xhr.readyState == 4 && xhr.status == 200)
                                            {
    						leselect = xhr.responseText;
    						// On se sert de innerHTML pour rajouter les options a la liste
    						document.getElementById('poste_joueur').innerHTML = leselect;
    					}
    				}
     
    				// Ici on va voir comment faire du post
    				xhr.open("POST","inc/affiche_arme.php",true);
    				// ne pas oublier ça pour le post
    				xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    				// ne pas oublier de poster les arguments
    				// ici, l'id de l'auteur
    				sel = document.getElementById('choix_poste');
    				idnote = sel.options[sel.selectedIndex].value;
    				xhr.send("idnote="+idnote);
    			}
    </script>
    dans ma page "affiche_arme.php" qui est appelé via la fonction "function arme()", il m'est impossible de faire fonctionné un drag and drop sortable comme celui de la page officiel , meme en utilisant "jQuery.noConflict();".

    Si quelqu'un à une piste, je suis preneur
    Merci d'avance
    Les pièges de l'Internet
    Helix, réponse à une intrusion


    "La plus grande gloire n'est pas de ne jamais tomber, mais de se relever à chaque chute." Confucius
    "Si j'ai vu plus loin, c'est en me tenant sur les épaules de géants." Isaac Newton

  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
    Vu que tu utilises jquery...
    pourquoi tu n'utilises pas $.ajax ... ???
    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
    Rédacteur
    Avatar de pi-2r
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 487
    Par défaut
    Bonjour,

    Citation Envoyé par SpaceFrog Voir le message
    Vu que tu utilises jquery...
    pourquoi tu n'utilises pas $.ajax ... ???
    C'est-à-dire ?
    je ne suis pas encore trop alaise avec les subtilités du jquery et de l'ajax :p
    Les pièges de l'Internet
    Helix, réponse à une intrusion


    "La plus grande gloire n'est pas de ne jamais tomber, mais de se relever à chaque chute." Confucius
    "Si j'ai vu plus loin, c'est en me tenant sur les épaules de géants." Isaac Newton

  4. #4
    Rédacteur
    Avatar de pi-2r
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 487
    Par défaut
    bonsoir,
    je n'arrive toujours pas à fixer ce conflit ... est-ce-que quelqu'un pourrais me venir en aide ?
    Les pièges de l'Internet
    Helix, réponse à une intrusion


    "La plus grande gloire n'est pas de ne jamais tomber, mais de se relever à chaque chute." Confucius
    "Si j'ai vu plus loin, c'est en me tenant sur les épaules de géants." Isaac Newton

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 125
    Par défaut
    $.ajax() est la fonction de JQuery (une des fonctions en fait) qui permet d'envoyer une requete ajax. Tu peux inclure énormément de paramètres et tu as des méthodes de retour en cas d'erreur ou de succès... http://api.jquery.com/jQuery.ajax/
    Voilà, bon courage

  6. #6
    Rédacteur
    Avatar de pi-2r
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2006
    Messages
    1 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 487
    Par défaut
    merci de ta réponse MickSou , ça devient un peut plus clair.
    Je vais tester cela
    Les pièges de l'Internet
    Helix, réponse à une intrusion


    "La plus grande gloire n'est pas de ne jamais tomber, mais de se relever à chaque chute." Confucius
    "Si j'ai vu plus loin, c'est en me tenant sur les épaules de géants." Isaac Newton

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

Discussions similaires

  1. [Prototype/JQuery]debuter avec ajax
    Par kanabzh29 dans le forum jQuery
    Réponses: 3
    Dernier message: 04/09/2008, 09h57
  2. [Prototype/JQuery] tableau avec ajax
    Par friedamichelle dans le forum jQuery
    Réponses: 3
    Dernier message: 26/08/2008, 16h57
  3. [Jquery] Attente fonction ajax
    Par Luffy49 dans le forum jQuery
    Réponses: 8
    Dernier message: 08/07/2008, 22h50
  4. [JQuery] Votre Framework Ajax ?
    Par rad_hass dans le forum jQuery
    Réponses: 12
    Dernier message: 30/08/2007, 19h31

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