javascript - HTML 名称属性中的大括号

标签 javascript jquery html jquery-selectors getelementsbyname

我正在尝试根据名称检索 DOM 元素。不幸的是,它们的名称中包含花括号 {}

jQuery (1.6.4) 能够毫无问题地检索它们。但此时我正尝试用 getElementsByName() 替换这些调用,但 gEBN 不匹配查询字符串中包含大括号的任何内容。我试过反斜杠转义它一次又两次都无济于事。

有没有办法在不改变使用大括号的约定的情况下做到这一点?

It also looks like它们不在名称 attr 中允许的字符集中。

更新:似乎适用于 Chrome 但不适用于 Windows 的 Safari。但真正奇怪的是,即使是 Windows 版 Safari 也能很好地处理这些问题。

最佳答案

如果您阅读 selectors 上的 jQuery 文档页面,你会看到这个:

To use any of the meta-characters ( such as !"#$%&'()*+,./:;<=>?@[]^`{|}~ ) as a literal part of a name, it must be escaped with with two backslashes: \\. For example, an element with id="foo.bar", can use the selector $("#foo\\.bar").

关于javascript - HTML 名称属性中的大括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16202468/

相关文章:

javascript - 如何为站点范围内的所有链接重定向到不同的域但相同的目录? JavaScript?

javascript - 如何显示使用 AJAX 动态生成的隐藏元素?

javascript - 将 JSON 数据检索到 Javascript 的指南

javascript - 如何在 Twitter typeahead/bloodhound 的建议中显示多个返回值?

javascript - 你如何使用 frida Hook 原生剥离库?

javascript - 使用 D3 逐节点构建图

javascript - 选择 Div 容器/包装器内的多个 Div 卡

javascript - 如何处理 HTMLElement.Click() 静默失败

html - 输入文本时元素的位置移动

jquery - 视差效果——英雄形象按内容叠加/堆叠