考虑以下示例:
<input type="text" id="#ab>cd.ef" value="foo" />
<script type="text/javascript">
var id = '#ab>cd.ef';
alert($('#' + id).length);
</script>
这导致语法错误,所以我正在寻找一些东西来抑制选择器的特殊字符。
当然,对于这个例子,我可以这样做:
alert($('input').length);
但我将使用此原则来使用动态选择器,如:
return $('input[name="' + $(elem).attr('name') + '"]:checked').val();
即使我的“name”属性包含特殊字符。
所以这是我的问题:如何禁止字符串的特殊字符将其用作jQuery选择器?
答案 0 :(得分:2)
你可以在单引号中检查这个封闭的id并检入属性选择器
var id = '#ab>cd.ef';
alert($("[id='"+id+"']").length);