jquery转义方括号来选择元素
考虑一个输入元素
<input id="meta[152][value]" type="text" />
这里输入字段是动态生成的。 我需要选择该字段。 所以我用了,
alert($('#meta[152][value]').val());
但这似乎是无效的。 搜索后,我发现,“方括号”需要像#meta[152][value]
那么该怎么做? 我目前使用这个代码,
var id = "#meta[152][value]" // (I get this value by another method) I need the escaping to be done here. So that i can use as
/ **我需要使用正则表达式,替换或任何其他方法来获取id的值以获得#meta [152 ] [值],而不是手动** /
alert($(id).val());
您的建议将会有所帮助!
以下应该工作:
alert($('#meta[152][value]').val());
要么
var id = "#meta[152][value]";
alert($(id).val());
工作示例
转换功能:
function ConvertValue(id)
{
var test = id.replace(/[[]/g,'\[');
return "#" + test.replace(/]/g,'\]');
}
转换示例
如果你感觉更舒适而不逃避,你也可以使用属性选择器并使用这个id来搜索元素,如下所示: $("[id='meta[152][value]']")
最简单的方法就是使用常规的getElementById,它不需要转义:
document.getElementById("meta[152][value]").value;
链接地址: http://www.djcxy.com/p/87987.html
上一篇: jquery escape square brackets to select element
下一篇: What is the difference between properties and attributes in HTML?