我有几个INPUT:
<input type="text" name="entry[1]" value="aaa" id="firstEntry" />
<input type="text" name="entry[2]" value="bbb" id="secondEntry" />
<input type="text" name="entry[3]" value="ccc" id="thirdEntry" />
当我知道元素id是“secondEntry”时,如何得到“2”?
var name = $("#secondEntry").attr('name'); // name = "entry[2]"
但如何获得索引2? 我只需知道索引(2),而不是整个名称(条目[2])。
答案 0 :(得分:5)
这个名字只是一个字符串,你必须用字符串操作完成剩下的工作:
var name = $("#secondEntry").attr('name'); // name = "entry[2]"
name = name.substring(name.indexOf('[')+1); // name = "2]"
// if you want an integer
name = parseInt(name, 10); // name = 2
// if you want a string representation
name = name.substring(0, name.indexOf(']')); // name = "2"
答案 1 :(得分:1)
如果它始终采用该格式,即entry [x],则可以使用正则表达式;
var elename = $("#secondEntry").attr('name'); var i = elename.match("entry\\[([0-9])+\\]"); var ind = i[1];
答案 2 :(得分:1)
var re = /entry\[(\d{1})\]/;
var index = re.exec(string);
答案 3 :(得分:0)
你可以使用regular expressions来完成这个技巧。
答案 4 :(得分:0)
var name = $("#secondEntry").attr('name');
var index = name.substring( 6, name.length - 1 );