如何使用部分属性名称选择 DOM 元素?

发布于 2024-12-18 07:16:55 字数 627 浏览 1 评论 0原文

我想使用 document.selectQueryAll()element.selectQueryAll() 使用其属性的部分名称来选择页面上的多个元素。

注意:不使用部分属性值。

为什么? (您可能知道直接使用命名空间来执行此操作的更好方法???)

我想找到所有元素,

<div  xmlns:${prefix}='{a particular namespace value I know}' >

等等

我想弄清楚命名空间前缀是什么,对于我知道的特定命名空间正在寻找,这样我就可以在该特定名称空间中搜索子元素。

我计划如上所述找到该元素,找出名称空间,然后查找我的子元素,

querySelectAll( "[typeof='" + ${prefix} + ":" + "Offering" + "'" )

这样我就可以找到与此匹配的所有子元素

<div typeof="gr:Offering">

,但我不会提前知道 XML 名称空间前缀是什么定义为。

I'd like to select a number of elements on a page using document.selectQueryAll() or element.selectQueryAll() using a partial name for their attributes.

NOTE: NOT using partial attribute value.

WHY? (You may know a better way to do this using Namespaces directly???)

I want to find all elements where

<div  xmlns:${prefix}='{a particular namespace value I know}' >

etc

I want to figure out what the namespace prefix is, for a particular namespace I know I'm looking for, so then I can go search for sub-elements in that particular namespace.

I'd planned to find the element as described above, figure out the namespace, then go look for my sub-elements

querySelectAll( "[typeof='" + ${prefix} + ":" + "Offering" + "'" )

so I can find all sub-elements matching this

<div typeof="gr:Offering">

but I won't know in advance what the XML namespace prefix will be defined to be.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

焚却相思 2024-12-25 07:16:55

使用 XPath 根据名称进行查询,因为它是命名空间感知的。例如:

document.evaluate( '//@*[contains(local-name(), "data-")]', document, Function, XPathResult.ANY_TYPE, null )

将获取文档中的所有data-属性。

有一个相关问题可能有助于语法。

Use XPath to query based on names, since it is namespace aware. For example:

document.evaluate( '//@*[contains(local-name(), "data-")]', document, Function, XPathResult.ANY_TYPE, null )

will get all data- attributes in the document.

There is a related question which may help with the syntax.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文