Jquery如何从输入名称属性获取索引

时间:2011-06-12 20:52:46

标签: jquery attributes

我有这个代码工作正常,但我想知道是否可以使用jquery更快地从输入名称属性获取索引

<input name="inp[myindex]" value="bla" />

和jquery

var $idx = $this.attr('name');
var $split = $idx.split('[');
$idx = $split[1];
$idx = $idx.replace(']', '');

提前致谢!

3 个答案:

答案 0 :(得分:5)

在两个边界之间提取字符串的简明成语是split-pop-shift:

var subname= this.name.split('[').pop().split(']').shift();

或总是有正则表达式方法,虽然很丑,但仍然较短:

var subname= this.name.match(/\[([^[]*)\]/)[1];

jQuery专注于DOM操作,并没有自己的字符串处理功能。对索引字段名称使用方括号的方法是PHP的怪癖,而不是HTML固有的任何东西,它只将名称视为普通的旧字符串。

答案 1 :(得分:0)

还有其他方法可以做到这一点,但jquery没有。只是其他变种的子串,替换等

答案 2 :(得分:-2)

 $('input[name="<name-here>"]')