为什么斜杠字符导致我的选择器失败?

时间:2017-07-19 19:35:18

标签: javascript jquery jquery-selectors

在IE 11上使用JQuery 1.6.4

我的ID中有一个带斜杠的元素。

<span id='a/b'>
test
</span>

在我的代码中,我正在做

alert($('#a/b').length);

输出为0.仅当ID中有斜杠(/)时才会出现。 document.getElementById('a / b')运行正常。

所以我很困惑为什么带有斜杠的id在JQuery中不起作用?

1 个答案:

答案 0 :(得分:1)

这不是IE的问题。

这是因为/是元字符,您不能直接使用它。你必须在使用时逃避它。

http://api.jquery.com/category/selectors/

  

要使用任何元字符(例如!"#$%&'()*+,./:;<=>?@[\]^``{|}~)作为名称的文字部分,必须使用两个反斜杠对其进行转义:\。

     

例如,具有id="foo.bar"的元素可以使用选择器$("#foo\\.bar")