2012-06-23 142 views
1

的最后一节我有一个输入字段与像field[subkey][subkey2]获取字符串

我怎样才能得到字符串,subkey2在JavaScript中的最后部分的名称属性?

$('input').each(function(){ 
var name = $(this).attr('name'); 

// here I need only the last part of "name" 

}); 

回答

3

的第一个想法:

var string = "field[subkey][subkey2]", 
    parts = string.split('['), 
    variable2 = parts[2].substring(0,parts[2].length - 1); 

JS Fiddle demo

或者:

var string = "field[subkey][subkey2]", 
    variable2 = string.substring(string.lastIndexOf('[') + 1,string.length - 1); 

JS Fiddle demo

如果你想使用jQuery来选择相关的元素:

$('input').each(
    function() { 
     var string = this.name; 
     $(this).val(string.substring(string.lastIndexOf('[') + 1, string.length - 1)); 
    });​ 

JS Fiddle demo

参考文献:

2
"field[subkey][subkey2]".match(/\[([^\]]*)\]$/)[1] 
//"subkey2" 
+0

这是最好的答案,但不是选择[1],一个'.pop()'似乎更清洁 – Trey

1
str='field[subkey][subkey2]'; 
spl=str.split(']['); 
new_str=spl.pop(); 
final=new_str.substr(0,new_str.length-1); 

//final=subkey2 

如果你有一个可变深度