Код
[b].js[/b]
function addInput(name,count)
{
id=document.getElementById(count).value;
document.getElementById(count).value++;
id++;
newinput='<br /><input type=\'text\' name=\'element[]\' value=\'\' />\n';
newinput+='<input type=\'checkbox\' name=\'check[]\' value=\'\' id="check_'+id+'" />';
document.getElementById("fieldset").innerHTML+=newinput;
}
[b].html[/b]
<input type='hidden' name='count' value='1' id="count" />
<div id="fieldset">
<input type='text' name='element[]' value='' />
<input type='checkbox' name='check[]' value='' id="check_1" />
</div>
<div onclick="addGroup('element[]','count');">Добавить элемент</div>
function addInput(name,count)
{
id=document.getElementById(count).value;
document.getElementById(count).value++;
id++;
newinput='<br /><input type=\'text\' name=\'element[]\' value=\'\' />\n';
newinput+='<input type=\'checkbox\' name=\'check[]\' value=\'\' id="check_'+id+'" />';
document.getElementById("fieldset").innerHTML+=newinput;
}
[b].html[/b]
<input type='hidden' name='count' value='1' id="count" />
<div id="fieldset">
<input type='text' name='element[]' value='' />
<input type='checkbox' name='check[]' value='' id="check_1" />
</div>
<div onclick="addGroup('element[]','count');">Добавить элемент</div>
Смысл работы скрипта в том, что при нажатии на "Добавить элемент" в блок id=fieldset добавляется новая пара input.text + input.checkbox.
Проблема возникает в ФФ3 - при добавлении элемента - обнуляются значения вписанные в уже добавленные формы. в ИЕ такой проблемы нет. Opera так же некорректно работает.
Что можно сделать?
p.s. предложение отправлять уже готовый массив в скрипт и пусть он заполняет пока что не устраивает:) хочется более красивое решение проблемы.
Спустя 39 минут, 40 секунд (9.08.2008 - 13:30) Viking написал(а):
хм...
вроде все должно решаться без новых элементов, но ничего другого в голову не приходит.
вроде все должно решаться без новых элементов, но ничего другого в голову не приходит.
Код
newinput=document.createElement("div");
newinput.innerHTML='<input type=\'text\' name=\'element[]\' value=\'\' />\n<input type=\'checkbox\' name=\'check[]\' value=\'\' id="check_'+id+'" />';
document.getElementById("fieldset").appendChild(newinput);
newinput.innerHTML='<input type=\'text\' name=\'element[]\' value=\'\' />\n<input type=\'checkbox\' name=\'check[]\' value=\'\' id="check_'+id+'" />';
document.getElementById("fieldset").appendChild(newinput);
Спустя 27 минут, 6 секунд (9.08.2008 - 13:58) zona7o написал(а):
спасибо, работает.
если найду решение без создания дополнительных элементов - напишу)
если найду решение без создания дополнительных элементов - напишу)
_____________
Everybody lies©