gpt4 book ai didi

javascript - 如何选择所有父复选框?

转载 作者:行者123 更新时间:2023-12-04 03:30:18 25 4
gpt4 key购买 nike

<分区>

我对 Javascript/Jquery 还是很陌生,到目前为止了解得很少,但我需要为我的网站提供一个功能。 (我确定这很容易,但是是的,到目前为止我还没有得出任何结果 xD)

所以我的问题:

我有一个带有复选框列表的表单,所有这些都显示在 TreeView 中。我从 here 得到 TreeView .

所以我的结构与 w3schools.com 页面完全一样,具有相同的 css 和 javascript,唯一的区别是我有一个带复选框的表单而不是普通文本,这里我创建了一个示例:

var toggler = document.getElementsByClassName("caret");
var i;

for (i = 0; i < toggler.length; i++) {
toggler[i].addEventListener("click", function() {
this.parentElement.querySelector(".nested").classList.toggle("active");
this.classList.toggle("caret-down");
});
}
/* Remove default bullets */
ul, #myUL {
list-style-type: none;
}

/* Remove margins and padding from the parent ul */
#myUL {
margin: 0;
padding: 0;
}

/* Style the caret/arrow */
.caret {
cursor: pointer;
user-select: none; /* Prevent text selection */
}

/* Create the caret/arrow with a unicode, and style it */
.caret::before {
content: "\25B6";
color: black;
display: inline-block;
margin-right: 6px;
}

/* Rotate the caret/arrow icon when clicked on (using JavaScript) */
.caret-down::before {
transform: rotate(90deg);
}

/* Hide the nested list */
.nested {
display: none;
}

/* Show the nested list when the user clicks on the caret/arrow (with JavaScript) */
.active {
display: block;
}
<ul id="myUL">
<li><span class="caret"></span><input type="checkbox" value="xyz" name="xyz">Beverages
<ul class="nested">
<li><input type="checkbox" value="xyz" name="xyz">Water</li>
<li><input type="checkbox" value="xyz" name="xyz">Coffee</li>
<li><span class="caret"></span><input type="checkbox" value="xyz" name="xyz">Tea
<ul class="nested">
<li><input type="checkbox" value="xyz" name="xyz">Black Tea</li>
<li><input type="checkbox" value="xyz" name="xyz">White Tea</li>
<li><span class="caret"></span><input type="checkbox" value="xyz" name="xyz">Green Tea
<ul class="nested">
<li><input type="checkbox" value="xyz" name="xyz">Sencha</li>
<li><input type="checkbox" value="xyz" name="xyz">Gyokuro</li>
<li><input type="checkbox" value="xyz" name="xyz">Matcha</li>
<li><input type="checkbox" value="xyz" name="xyz">Pi Lo Chun</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>

我现在想要的是:例如,如果您从我的示例中选择“Matcha”,我希望选中所有父复选框,即“Green Tea”、“Tea”和“Beverages”。

但我不知道该怎么做:(

有人能帮我吗?

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