Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1823 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Probleme ajax listes liées

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme ajax listes liées

n°1885745
ramdamridd​im
Posté le 18-05-2009 à 16:08:56  profilanswer
 

Bonjour à tous je post car j'ai un probleme avec les listes liées en ajax. En effet j'ai lu et appliqué le tutoriel : http://siddh.developpez.com/articles/ajax/#LIV-A concernant 2 listes liées cependant je n'arrive pas à en lié plus que 2 ce qui est un peu embetant, rien ne s'affiche dans la troisieme liste, le code etant pourtant le meme . Quelqu'un aurait donc une methode générique pour ce genr d'application? mon code :
 
index  

Citation :

<form>
   <fieldset style="width:500px;">
    <legend>Liste Liée</legend>
    <label>Auteurs</label>
    <select name='auteur' id='auteur' onChange="javascript:go();">
     <option value='-1'>Aucun</option>
     
     <?php  
      mysql_connect("localhost","root","root" );
      mysql_select_db("livre" );
      $res=mysql_query("SELECT * FROM auteur ORDER BY nom" );
      while($row=mysql_fetch_assoc($res)){
       echo "<option value='".$row["id"]."'>".$row["nom"]."</option>";
      }
     ?>
    </select>
     
    <label>Livres</label>
    <div id='livre' style='display:inline'>
     
     <select name='livre'>
      <option value='-1'>Choisir un livre</option>
     </select>
    </div>
     
    <label>Pages</label>
    <div id='page' style='display:inline'>
     <select name='page'>
       
     </select>
    </div>
   </fieldset>
   
  </form>


js

Citation :


function go(){
 var xhr=getXhr();
 
 xhr.onreadystatechange=function(){
  if(xhr.readyState == 4 && xhr.status==200){
   leselect=xhr.responseText;
   document.getElementById('livre').innerHTML=leselect;
  }
 }
 xhr.open("POST","ajaxLivre.php",true);
 xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 
 sel=document.getElementById('auteur');
 idauteur=sel.options[sel.selectedIndex].value;
 xhr.send("idAuteur="+idauteur);
}  
 
function go2(){
   
 var xhr=getXhr();
 
 xhr.onreadystatechange=function(){
  if(xhr.readyState == 4 && xhr.status==200){
   leselect=xhr.responseText;
   document.getElementById('page').innerHTML=leselect;
  }
 }
 xhr.open("POST","ajaxLivre2.php",true);
 
 xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 
 sel=document.getElementById('livre');
 
 _idLivre=sel.options[sel.selectedIndex].value;
 
 xhr.send("_idLivre="+_idLivre);
}  


 
ajaxLivre

Citation :


<?php
 
 
 echo "<select name='livre' id='livre' onChange='javascript:go2();'>";
 
 
 if(isset($_POST['idAuteur'])){
  mysql_connect("localhost","root","root" );
  mysql_select_db("livre" );
  $res=mysql_query("SELECT idLivre,titre FROM livre WHERE idAuteur='".$_POST['idAuteur']."' ORDER BY titre" );
       
  while($row=mysql_fetch_array($res)){
   echo "<label>".$row["idLivre"]."</label>";
   
   
   echo "<option value='".$row["idLivre"]."'>".$row["titre"]."</option>";
  }
 }
 
 echo "</select>";
 
?>
 


 
ajaxLivre2
 

Citation :


 
<?php
 echo "cool";
 
 echo "<select name='page'>";
 
 if(isset($_POST['_idLivre'])){
  mysql_connect("localhost","root","root" );
  mysql_select_db("livre" );
  echo "cool";
  $res=mysql_query("SELECT idPage,nombre FROM page WHERE _idLivre='".$_POST['_idLivre']."'" );
       
  while($row=mysql_fetch_assoc($res)){
   echo "<option value='".$row["idPage"]."'>".$row["nombre"]."</option>";
  }
 }
 
 echo "</select>";
?>
 


 
 
Help please

mood
Publicité
Posté le 18-05-2009 à 16:08:56  profilanswer
 

n°1885762
infoman64
JE SUIS LA POUR TOI MON AMI
Posté le 18-05-2009 à 16:28:38  profilanswer
 

attention
tu as un select et un div avec un id "div", et pareil pour "page",
je pense que c'est le faite que une fois que tu as excute go(), tu as deux id "livre" (le select et le div), donc a l'appel javascript getelementByid(livre) ca bug.
 
Utilise firefox et la console d'erreur pour les bugs JS (outils/consol d'erreurs ), c'est tres pratique pour trouver ton bug


Message édité par infoman64 le 18-05-2009 à 16:29:24
n°1885779
ramdamridd​im
Posté le 18-05-2009 à 16:54:39  profilanswer
 

Merci beaucoup pour ta réponse cependant je viens de tester avec des noms différents et toujours le meme probleme....

n°1885782
ramdamridd​im
Posté le 18-05-2009 à 16:59:54  profilanswer
 

Au temps pour moi, tu avais raison, j'ai completement ré assigné mes noms d'id et ça marche. Merci encor!!!!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Probleme ajax listes liées

 

Sujets relatifs
Problème menuprobleme chargement swf
Problème gestion des erreursproblème lors de l'execution/ source pas OK ^^"
Problème pour écrire dans ma BDDProbleme: Newsletter HTML passe en Spam...
thread problèmeProblème interprétation entre php et fpdf
Problème avec un menu déroulant qui s'ouvre au chargement 
Plus de sujets relatifs à : Probleme ajax listes liées


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR