gpt4 book ai didi

javascript - HTML JavaScript querySelector 用于查找其子元素具有特定数据属性的元素

转载 作者:行者123 更新时间:2023-11-28 05:10:46 25 4
gpt4 key购买 nike

在下面的 HTML 标记中,我想查询 <div>有一个 data-parent设置为“true”,并且包含的​​子项有 data-child-gender设置为“true”并且内部 html 为“male”。

    <div id="grandparent">
<div id="parent1" data-parent="true">
<div id="child1" data-child-gender="false">
male
</div>
</div>
<div id="parent2" data-parent="true">
<div id="child2" data-child-gender="true">
female
</div>
</div>
<div id="parent3" data-parent="false">
<div id="child3" data-child-gender="true">
female
</div>
</div>
<div id="parent4" data-parent="true">
<div id="child4" data-child-gender="true">
male
</div>
</div>
</div>

鉴于上述情况,预期 <div>parent4

要使用什么 JavaScript querySelector?

最佳答案

首先使用querySelectorAll它将给出一个数组。然后迭代它并检查并获取具有所需 data 属性的元素。

之后,您可以使用 if 并检查其中的内容

let k = document.querySelectorAll('[ data-parent=true]').forEach(function(item) {
let elem = item.querySelector('[data-child-gender=true]');
if (elem !== null && elem.innerHTML.trim() === 'male') {
console.log(item.id)
}
})
<div id="grandparent">
<div id="parent1" data-parent="true">
<div id="child1" data-child-gender="false">
male
</div>
</div>
<div id="parent2" data-parent="true">
<div id="child2" data-child-gender="true">
female
</div>
</div>
<div id="parent3" data-parent="false">
<div id="child3" data-child-gender="true">
female
</div>
</div>
<div id="parent4" data-parent="true">
<div id="child4" data-child-gender="true">
male
</div>
</div>
</div>

关于javascript - HTML JavaScript querySelector 用于查找其子元素具有特定数据属性的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56696778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com