Bonjour,
je pense que mon probl�me fait appel � de l'AJAX, � moins que je ne me complique pour rien (et �a ce serait gentil de me le dire).
J'ai un formulaire avec plusieurs listes d�roulantes, aliment�es par le nom de soci�t�s provenant de la base de donn�es. Chaque liste correspond � une cat�gorie diff�rente.
Ex :
Assureur - <select></select> "+"
Installateur - <select></select> "+"
[...]
A c�t� de ces listes, j'ai un bouton "+" associ�. Lorsque l'on clique dessus, j'aimerai faire appara�tre juste en dessous de ma liste, la m�me liste avec le m�me nom de cat�gorie.
Ex :
Assureur - <select></select> "+" > je clique et �a affiche :
Assureur - <select></select>
Donc j'aurai deux fois la m�me liste, et je pourrai s�lectionner une autre soci�t� appartenant � la m�me cat�gorie.
J'ai pens� au fait qu'il y avait les listes � choix multiples, mais esth�tiquement parlant sur ma page, �a ne ferait pas terrible.
C'est pourquoi je cherche une autre solution !
J'ai donc commenc� par cr�er une ligne avec le nom de ma cat�gorie, et la liste d�roulante des soci�t�s, puis le bouton + :
Juste en dessous je me suis dit qu'il fallait cr�er un div pour afficher la nouvelle liste d�roulante :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 $nomcat = $catsoc['nom_categorie_societe']; $idcat = $catsoc['id_categorie_societe']; echo '<tr>'; echo '<td>'.$nomcat.'</td> <td><select name="'.$idcat.'"> <option value="0-0">Sélectionnez une société</option>'; $req = mysql_query("SELECT id_societe, nom_societe FROM societe ORDER BY nom_societe ASC;"); while ($donnees = mysql_fetch_array($req)) { echo '<option value="'.$donnees['id_societe'].'-'.$donnees['nom_societe'].'"'. $selected.'>'.$donnees['nom_societe'].'</option>'; } echo '</select></td><td>'; echo '<input type="button" name="add" value="+" onclick="add_soc('.$idcat.$nomcat.');"/></td></tr>';
Et ma fonction add_soc() appel�e sur le onClick du bouton + :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2 echo '<tr><td><div id="div'.$idcat.$nomcat.'" style="display:none;"></div></td></tr>';
Et pour le moment �a s'arr�te ici. Je pensais ensuite faire appel � une requ�te Ajax pour remplir ma liste d�roulante, mais �a me ferait cr�er encore un div � l'int�rieur de celui ci ?
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6 function add_soc(id) { document.getElementById('div'+id).style.display = 'block'; document.getElementById('div'+id).innerHTML = '<select name="'+id+'"><option></option></select>'; }
J'ai l'impression que �a va faire beaucoup de choses en fait tout �a pour recopier un �l�ment.
D'autant plus qu'� ce stade l�, j'ai cette erreur qui s'affiche :
Donc est-ce que je pars dans la bonne direction ? Est-ce que je me complique beaucoup trop ?missing ) after argument list
[Break on this error] add_soc(45assureur);
Un peu d'aide serait la bienvenue ^^
Partager