【发布时间】:2015-08-12 23:53:27
【问题描述】:
我正在尝试制作一个 jQuery 选择器,以通过任意 id 选择一个 html 元素。 id 可能包含需要转义的特殊字符。一个例子是test_E///_AAAAA
我基本上正在做这个工作 fiddle 中正在发生的事情(它使用 v 1.11.0,我使用的是 v 1.11.3 并且还使用 2.1.3 进行了测试)
但是,在我的扩展环境中,它不起作用。我得到Syntax error, unrecognized expression: #test_E\\/\\/\\/_AAAAA
关于 jQuery 肯定有一些不为人知的事实,这就是这个工作和不工作之间的区别。我是新手,没有希望识别它。
我注意到我并不孤单。 this thread 的评论员也有同样的问题。
代码文件长达数千行,我的雇主可能禁止我发布超过几行的内容。我只是在寻找一个提示、一个线索、一个关于什么会导致一个完全合理的选择字符串被拒绝的问题。
【问题讨论】:
-
“我只是在寻找提示”:不要在 ID 中使用特殊字符...
-
第一个线索是该元素不存在。但如果没有任何代码,将很难验证和回答。
-
freedomn-m。这是不可避免的。我需要为每个 DOM 元素提供一个唯一且可引用的 id,该 id 是从数据中动态填充的。该数据中唯一的唯一字段包含特殊字符(我无法控制)。 WhiteHat,如果 jQuery 选择器不能找到匹配的元素,它不会给出这个错误;它只是选择大小为 0。此错误表明 jQuery 在选择器字符串中感知到语法错误。
标签: javascript jquery