Можно ли создать HTML-форму, отвечающую количеству вещей, которые пользователь хочет отправить?
То есть то, что у меня сейчас есть:
<form ...>
<select ...>
<option>1</option>
<option>2</option>
...
</select>
***
</form>
Когда пользователь выбирает один из вариантов, *** должно иметь
<input type="text" ...>
отображается количество раз, выбранное пользователем.
То есть, если пользователь выбрал 5 из опций, то пользователь должен увидеть 5 опций ввода. Если он передумает выбрать 2 вместо этого, то страница должна обновиться соответственно, чтобы показать только 2 варианта ввода.
===== [EDIT] =====
Я изменил код, чтобы ввод был просто текстом. Код у меня не работает. Не обновляет количество полей ввода.
<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>
Это работало, когда у меня был document.write вместо appendTo , но я по сути хочу, чтобы страница оставалась такой же, сохраняя для дополнительных полей ввода после того, как пользователь изменяет значение в поле numvars .