【问题标题】:Is there any way to use Dojo/query to grab classname with a specific number instead of getElementsByClassName有没有办法使用 Dojo/query 来获取具有特定数字而不是 getElementsByClassName 的类名
【发布时间】:2021-09-09 22:27:55
【问题描述】:

我想将 document.getElementsByClassName 更改为 dojo.query 或 query 但不起作用:

var name =  document.getElementsByClassName("dijitReset dijitInputInner")[1];

这个有效

var name  = dojo.query(".dijitReset dijitInputInner")[1];

这个不行

【问题讨论】:

  • 专业提示:您可以format 代码围栏或缩进 4 个空格
  • 请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: javascript dojo


【解决方案1】:

.query 返回一个类似数组的 NodeList,getElementsByClassName 返回一个类似数组的 HTMLCollection。问题不在于那个,而在于你的选择器。

document.getElementsByClassName("dijitReset dijitInputInner")

将选择具有dijitReset 类或dijitInputInner 类的元素。

dojo.query(".dijitReset dijitInputInner")

将选择 标签名称dijitInputInner 的元素,这些元素是类名称包含 dijitReset 的元素的后代。

您需要将其更改为:

dojo.query(".dijitReset, .dijitInputInner")

使用逗号(表示新选择器)和.(表示搜索类)。

【讨论】:

    猜你喜欢
    • 2022-06-16
    • 2022-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多