首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery追加自动增量

jQuery追加自动增量
EN

Stack Overflow用户
提问于 2014-12-17 23:26:54
回答 2查看 959关注 0票数 1

我有一个输入变量列表,每个条目都有一个唯一的递增名称,如下所示.

代码语言:javascript
运行
复制
<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()非常容易,但我不知道如何将附加输入的名称命名为"valuesn+1“。想法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-12-17 23:41:47

但是我希望有一个按钮来动态地添加另一个文本框。使用jQuery的append()非常容易,但我不知道如何将附加输入的名称设置为"valuesn+1“

这是这样做的一种方法:

代码语言:javascript
运行
复制
$('#btn').click(function() {
  var lastname = $('#inputs [name^=value]:last-child')[0].name;
  var next = parseInt(lastname.match(/\d+/)[0]) + 1;
  $('#inputs').append('<input type="text" name="values[' + next + ']" value="more more text">');
});
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="inputs">
<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">
</div>
<button id="btn">Append</button>

票数 2
EN

Stack Overflow用户

发布于 2014-12-17 23:29:45

因为您使用PHP作为后端,所以可以将它们命名为values[],并且PHP将自动将它们绑定到数组中。

这样就省去了与任何JavaScript打交道的麻烦。

如果你真的想用jQuery来做这件事,你可以试着在你所有的输入上运行这个.

代码语言:javascript
运行
复制
$('input').attr('name', function(index) { return 'values[' + index + ']'; });

它将根据它们的索引重新索引所有这些。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27536710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档