Est-il possible de créer un formulaire HTML qui répond au nombre d'éléments que l'utilisateur souhaite envoyer?Entrée de formulaire HTML dynamique
C'est, ce que j'ai maintenant:
<form ...>
<select ...>
<option>1</option>
<option>2</option>
...
</select>
***
</form>
Lorsque l'utilisateur sélectionne l'une des options, *** devrait avoir
<input type="text" ...>
apparaissent le nombre de fois l'utilisateur sélectionné. Autrement dit, si l'utilisateur a sélectionné 5 parmi les options, l'utilisateur devrait voir 5 options de saisie. S'il change d'avis 2 à la place, la page doit être mise à jour en conséquence pour ne montrer que 2 options de saisie.
===== [EDIT] =====
J'ai changé le code pour avoir l'entrée est juste le texte. Le code que j'ai ne fonctionne pas. Il ne met pas à jour le nombre de champs de saisie.
<script type="text/javascript">
<!--
function updateOptions(nvars)
{
var n = nvars;
while(n>0) {
var newdiv1 = "<div>Var name: <input type=\"text\" name=\"var-name\"><br></div>";
var newdiv2 = "<div>Var type: <input type=\"text\" name=\"var-type\"><br></div>";
newdiv1.appendTo("#bloo");
newdiv2.appendTo("#bloo");
n--;
}
}
//-->
</script>
<h3>Create a table in the test db!<h3>
<form name="f1" method="POST" action="createTable.php">
Name of Table: <input type="text" name="table-name"><br>
No of vars: <input type="text" name="numvars" onChange="updateOptions(this.value)"><br>
<div id="bloo"></div>
</form>
Cela a fonctionné quand j'avais un document.write au lieu d'un appendTo, mais je veux essentiellement la page le restent les mêmes pour enregistrer les champs d'entrée supplémentaires après que l'utilisateur modifie la valeur dans le numvars domaine.
Si cela ne prend pas trop de temps, du code me permettrait d'économiser du temps. – user5243421
Je viens d'apprendre javascript, donc je ne suis pas sûr de ce qu'est Prototype. – user5243421
Désolé, journée de travail au travail, je vais voir si je peux écrire quelque chose plus tard. –