javascript - 执行动态生成的 Jquery 代码

标签 javascript jquery dom dynamic

谁能告诉我两者之间的区别

  1. $(".level3_td[data-levelid="+ 01 + "]")
  2. $(".level3_td[data-levelid=01]")

我正在动态生成 $(".level3_td[data-levelid="+ 01 + "]") 但它似乎没有找到我要查找的项目。然后我尝试将它粘贴到控制台中,发现它无法找到 DOM 对象。之后,我通过硬编码 $(".level3_td[data-levelid=01]") 尝试了第二个,它成功了。

谁能告诉我这两者之间有什么区别,我怎样才能让第一个起作用?

最佳答案

您的 01 正在转换为 1,并删除 0。您需要通过将 01 括在引号中来告诉 Javascript 您希望将其视为字符串。像这样的东西:

$(".level3_td[data-levelid=" + "01" + "]")

所以实际上,您的代码正在尝试访问很可能不存在的 $(".level3_td[data-levelid=1]")

关于javascript - 执行动态生成的 Jquery 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18897255/

相关文章:

c++ - 频繁读/写小文件会降低性能吗?

javascript - addEventListener ("popstate") 不触发 .document

javascript - 对数据库查询的实时过滤

javascript - 如何实现sizzle的:gt filter in vanilla javascript

javascript - JSON 点符号转字符串

javascript - 获取有序列表项的计算数量

javascript - 由于某种原因,for 循环中的字符串增量连接忽略 "0"

Jquery document.ready 事件在我的元素 css 样式加载到 IE8 之前触发

jquery - 使用 cookie 永久更改 CSS

javascript - DOM:如何根据迭代器值设置元素宽度并在鼠标悬停时调用函数?