0
在需要不同数量的乐队成员的表单中,我在按钮上使用以下代码来复制输入。在jQuery中克隆麻烦
的HTML片段是这样的:
<div id="input1" style="margin-bottom:4px;" class="clonedInput">
<label for="band_member">Band Member: </label>
<input type="text" name="name1" id="name1" />
</div>
<div>
<input type="button" id="btnAdd" value=" add another member " />
</div>
这jQuery是在文件准备好功能:
$('#btnAdd').click(function() {
var num = $('.clonedInput').length;
var newNum = new Number(num + 1);
var newElem = $('#input' + num).clone().attr('id', 'input' + newNum);
newElem.children(':first').attr('val', '').attr('id', 'name' + newNum).attr('name', 'name' + newNum);
$('#input' + num).after(newElem);
$("#band_member_count").val(newNum);
}); // end btnAdd click
当提交表单时,添加的输入没有被提交最后一个条目变成第一个输入的值,并且每个新添加的输入的值不会像代码所示那样被清除。
我非常感谢任何帮助。
在此先感谢,乔恩
我改变了它如你所说,但没有奏效。然而,按照你的逻辑,我将它改为:newElem.find('input')。attr('val','').attr('id','name'+ newNum).attr('name','名称'+ newNum);并且它现在提交所有值(感谢!!!)但是克隆上的值仍然没有被清除。思考? – jgravois 2011-12-17 05:57:43