javascript - 当元素 ID 包含美元符号时,Javascript 中的 getElementByid

标签 javascript

当 ID 包含美元符号时,getElementById() 似乎找不到该元素。有没有办法用纯 Javascript 解决这个问题?我无法控制元素 ID,因为它们是由“页面生成器”生成的,并且我无法在此应用程序中使用 jQuery。

示例:

<div id="win0divFRED$0">

var orig = document.getElementById("win0divFRED$0");

非常感谢,
约翰

最佳答案

由于 HTML4.01 规范非常严格

ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods (".").

根据 4.01 规范,您的 ID 无效。
与 HTML5 相比:

The value must be unique amongst all the IDs in the element's home subtree and must contain at least one character. The value must not contain any space characters.

我认为这可能是文档类型的问题。尝试:

<!doctype html>

关于javascript - 当元素 ID 包含美元符号时,Javascript 中的 getElementByid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11738195/

相关文章:

javascript - 将数据放在 firebase 数据库中多个位置的最佳方法

javascript - jQuery 自定义选项卡处于事件状态,单击同一选项卡关闭并再次打开

javascript - 保留文本但消除标签之间的 CR LF

javascript - 重新启动 bitcoind 守护进程,以防 Node.js 代码崩溃

javascript - JavaScript >> 代表什么?

javascript - data.loading 为 false 时立即响应 : How can I call a method only once in the lifecycle of a component,

javascript - jsdoc:如何使用括号表示法记录属性?

javascript - 使用nodejs在mongodb中添加另一个图像路径

javascript - 使用 JavaScript 更改 HTML 中的链接文本

javascript - 我们需要从网页获取 url(地址栏信息)电子邮件