3

好的,首先,我在想这个标题以及在谷歌中搜索什么时遇到了很多麻烦。所以这可能只是我很愚蠢,但这是我希望你帮助的。

我有一个表单,它有一个按钮,可以添加额外的输入字段,但我希望每次按下按钮时都迭代该字段的名称。例如,第一次将是:

<input type="textfield" name="field1" value=""/>

然后第二次按下它,它将是:

<input type="textfield" name="field2" value=""/>

我还有一个我目前在这里拥有的小例子:http: //jsfiddle.net/5gh75/14/

请让我知道您是否可以帮助我,或者如果您需要更多信息,谢谢:)

4

3 回答 3

6

处理这种情况的最佳方法是全部命名field[]

当由服务器端代码处理时,它将为您构建一个数组。例如,在 PHP 中你会得到$_POST['field'][0]$_POST['field'][1]等等。

于 2013-04-10T21:17:38.373 回答
2

对于您的示例:

jQuery

var i=0;
$('span.add').click(function () {
    $('<input>').attr({
        type: 'textfield',
        name: 'program'+i
    }).appendTo('#addsoftware');
    i++;
});

JSF中。

但是@Kolink-s 的答案要好得多。

于 2013-04-10T21:20:23.110 回答
0

编辑:发送后我才看到以前的帖子。使用数组肯定会更好,而且 JQuery 总是很好:)。

只需使用一些javascript:

<HTML>
<HEAD>
<TITLE>Dynamically add Textbox, Radio, Button in html Form using JavaScript</TITLE>
<SCRIPT language="javascript">
idx = 0;
function add() {
     //Create an input type dynamically.
     var element = document.createElement("input");

     //Assign different attributes to the element.
     element.setAttribute("type", "textfield");
     element.setAttribute("name", "field" . idx);
     element.setAttribute("value", "");

     idx++;

     var foo = document.getElementById("fooBar");

     //Append the element in page (in span).
     foo.appendChild(element);
}
</SCRIPT>
</HEAD>
<BODY>
<FORM>
<H2>Dynamically add element in form.</H2>
Select the element and hit Add to add it in form.
<BR/>
<INPUT type="button" value="Add" onclick="add()"/>

<span id="fooBar">&nbsp;</span>

</FORM>
</BODY>
</HTML>

这个例子来自:Add more text fields dynamic in new line (html)

于 2013-04-10T21:22:41.093 回答