如何使用jQuery选择具有非字母数字ID的元素?

前端之家收集整理的这篇文章主要介绍了如何使用jQuery选择具有非字母数字ID的元素?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Axl Rose的wiki页面包含一个包含id的元素:
1983.E2.80.931986:_Early_years

我使用$(‘#1983.E2.80.931986:_Early_years’)获取此元素,但失败.

如果我想通过id选择这个元素,那么正确的选择器是什么?

解决方法

the docs直:

If you wish to use any of the Meta-characters (such as
!"#$%&'()*+,./:;<=>?@[\]^&a{|}~) as a literal part of a name,you must
escape the character with two backslashes: \\. For example,if you
have an element with id="foo.bar",you can use the selector $("#foo\\.bar").

推论:

jQuery.escapeSelector = function(str) {
  return str.replace(/[!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~]/g,"\\$&");
}

// ...

$('#' + $.escapeSelector('1983.E2.80.931986:_Early_years'))
原文链接:https://www.f2er.com/jquery/176533.html

猜你在找的jQuery相关文章