jQuery追加自动增量

jQuery追加自动增量,jquery,html,Jquery,Html,我有一个输入变量列表,每个项都有一个唯一的递增名称,就像这样 <input type="text" name="values[0]" value="some text"> <input type="text" name="values[1]" value="some other text"> <input type="text" name="values[2]" value="some more text"> ... <input type="text"

我有一个输入变量列表,每个项都有一个唯一的递增名称,就像这样

<input type="text" name="values[0]" value="some text">
<input type="text" name="values[1]" value="some other text">
<input type="text" name="values[2]" value="some more text">
...
<input type="text" name="values[n]" value="last text">

...

整个页面(包括基本上是一个数组的值)由PHP脚本生成,但我希望有一个按钮来动态添加另一个文本框。jQuery的append()很容易实现,但我不知道如何将追加输入的名称设置为“values[n+1]”。想法?

因为您的后端使用PHP,您可以将它们命名为
值[]
,PHP会自动将它们绑定到一个数组中

这就省去了使用JavaScript的麻烦

如果您真的想使用jQuery来做这件事,您可以尝试在所有输入上运行它

$('input').attr('name', function(index) { return 'values[' + index + ']'; });
这将根据它们的索引对它们进行重新索引

但我想有一个按钮来动态添加另一个文本框。jQuery的append()很容易实现,但我不知道如何将追加输入的名称设置为“values[n+1]”

这是一种方法:

$('#btn')。单击(函数(){
var lastname=$('#inputs[name^=value]:last child')[0].name;
var next=parseInt(lastname.match(/\d+/)[0])+1;
$('#inputs')。追加('');
});


追加
重要说明:
$('input').attr('name',函数(index){return'值['+index+']';})将破坏(其他)当前文档names@RokoC.Buljan我们希望您可以更改选择器以适应这些输入。评论不错。我也希望如此。完美-这正是我想要的,我只是对jQuery的语法还不太熟悉,所以它很明显。谢谢