Reputation: 11545
I have a input field with a name attribute like field[subkey][subkey2]
How can I get the last part of the string, subkey2
in javascript?
$('input').each(function(){
var name = $(this).attr('name');
// here I need only the last part of "name"
});
Upvotes: 1
Views: 105
Reputation: 253318
First thoughts:
var string = "field[subkey][subkey2]",
parts = string.split('['),
variable2 = parts[2].substring(0,parts[2].length - 1);
Alternatively:
var string = "field[subkey][subkey2]",
variable2 = string.substring(string.lastIndexOf('[') + 1,string.length - 1);
If you want to use jQuery to select the relevant elements:
$('input').each(
function() {
var string = this.name;
$(this).val(string.substring(string.lastIndexOf('[') + 1, string.length - 1));
});
References:
Upvotes: 3
Reputation: 5520
str='field[subkey][subkey2]';
spl=str.split('][');
new_str=spl.pop();
final=new_str.substr(0,new_str.length-1);
//final=subkey2
in case you have a variable depth
Upvotes: 1