Bonjour,
J'ai un question pour l'aggrandissement d'un formulaire avec javascript.
Je voudrais qu'en cliquant sur un lien, ma fonction javascript ajouter() ajoute ces quelques lignes :
echo 'Type de goodie: ';
echo '<SELECT name="goodie_type['.$n.']" size="1">';
for($i=0; $i<6 ; $i++)
{
echo '<OPTION value="'.$i.'"';
if ($listegoodies['type']==$i) echo 'selected';
echo '>'.$table_type[$i];
}
echo '</SELECT> <br />';
echo 'Commentaire (non nécessaire) : <input type="text" name="goodie_autre['.$n.']" size="32" maxlength="256" value=""><br />';
Pour le champ texte ou le champ input, pas de problème je sais faire, j'ai trouvé aussi comment rajouter un champ select, mais pas comment le remplir avec ses options.
Voici ma fonction qui rajoute le texte, input et select, mais pas l'option :
function ajouter(n)
{
titre = document.createTextNode ('Type de goodie récupéré ');
document.getElementById ('cr').appendChild (titre);
titre = document.createElement ('select');
titre.setAttribute('size', '1');
titre.setAttribute('name', ('goodie_type['+n+']'));
document.getElementById ('cr').appendChild (titre);
ligne = document.createElement ('br');
document.getElementById ('cr').appendChild (ligne);
titre = document.createTextNode ('Commentaire ');
document.getElementById ('cr').appendChild (titre);
titre = document.createElement ('input');
titre.setAttribute('type', 'text');
titre.setAttribute('size', '32');
titre.setAttribute('maxlength', '64');
titre.setAttribute('name', ('goodie_autre['+n+']'));
document.getElementById ('cr').appendChild (titre);
ligne = document.createElement ('br');
document.getElementById ('cr').appendChild (ligne);
document.getElementById ('ajout').href = 'javascript:ajouter('+(n+1)+')';
}
</script>
Et voici comment j'appelle ma fonction javascript (quand je clique, elle me fait apparaitre le select, mais sans choix.
echo '<div id="cr">';
echo '</div>';
echo "<a id='ajout' href='javascript:ajouter(".$n.")'> Ajouter un goodie </a>";
Merci d'avance pour votre aide !
Configuration: Windows XP
Firefox 2.0.0.12