检查元素是否具有数组名称,并提取信息

时间:2016-05-21 11:41:00

标签: jquery arrays

假设我有以下输入:

<input type="text" name="action[5][3]">

如何检查输入名称是否为&#34; action&#34;考虑到它还包括钥匙?即:

if (hasArrayName($(this).attr('name'), 'action') == true) {
    console.log('element is an action');
}

另外,如何从名称中提取每一位信息?我想将这3条信息映射出来:

var array_name = 'action';
var index_1 = '5';
var index_2 = '3';

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

要在字符串中查找字符串,请使用indexOf

console.log( $(this).attr('name').indexOf('action') );

要查找name的部分,您可以使用正则表达式和exec,例如:

console.log( /(action)\[(\d+)\]\[(\d+)\]/.exec('action[2][5]') );
// ["action[2][5]", "action", "2", "5"]