JQuery Dynamic Form - 提交具有相同名称的输入框

时间:2012-06-14 14:50:50

标签: jquery post dynamic submit dynamicform

我需要帮助。我使用的是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'
}
);

});

1 个答案:

答案 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>

您可以在添加/删除操作后运行循环,或者您可以在提交表单之前等待并运行它们,如果您由于任何其他原因不需要引用输入。