我需要帮助。我使用的是JQuery的Dynamic Form插件,每次点击“+”按钮都会复制我的输入框但是当我点击提交按钮时出现问题 我无法通过$ _POST检索输入框的值,因为它们都是相同的“名称”。
如何在复制时更改输入框的名称?
HTML:
<div id="duplicate3">
<input id="description" type="text" name = "description"size="40">
<input id="amount" type="text" name="amount" size="14">
</div>
<a href="create.php?state=1" id="plus3" class="ui-state-default ui-corner-all" title="Add">[+]</a>
<a href="create.php?state=0" id="minus3" class="ui-state-default ui-corner-all" title="Remove">[-]</a>
这是我的javascript:
$(document).ready(function(){
$("#duplicate3").dynamicForm("#plus3", "#minus3",{
limit:10,
createColor: 'yellow',
removeColor: 'red'
}
);
});
答案 0 :(得分:1)
为每个输入添加一个数字的几个快速循环可以起作用:
$("input[name^='description']").each(function(index){
var id = "description" + (index+1);
$(this).attr("id", id);
$(this).attr("name", id);
});
$("input[name^='amount']").each(function(index){
var id = "amount" + (index+1);
$(this).attr("id", id);
$(this).attr("name", id);
});
这会让你:
<div id="duplicate3">
<input id="description1" type="text" name="description1" size="40">
<input id="amount1" type="text" name="amount1" size="14">
<input id="description2" type="text" name="description2" size="40">
<input id="amount2" type="text" name="amount2" size="14">
<input id="description3" type="text" name="description3" size="40">
<input id="amount3" type="text" name="amount3" size="14">
...
</div>
您可以在添加/删除操作后运行循环,或者您可以在提交表单之前等待并运行它们,如果您由于任何其他原因不需要引用输入。