gpt4 book ai didi

javascript - 在 html 数据属性中存储值的最佳方法是什么

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

如果我想在 html 中的一个数据属性中存储多个值,那么完成它的方法是什么,以及如何使用 jQuery 找到这些值?

在以下情况下,存储值的最佳方法是什么?逗号分隔,空格分隔。

如果我想找到<li>具有 "Mango" 的标签在data-fruit属性中,如何在不使用for循环和if条件的情况下找到它?

<ul class = "Fruits"><li data-fruit="Mango,Apple">Mango And Apple </li><li data-fruit="Mango,Strawberry"> Mango And Strawberry</li><li data-fruit="Apple,Strawberry"> Apple And Strawberry</li>
</ul>

最佳答案

可以将数据以数组的形式持久化,那么就可以使用.data()从元素中获取它。

$('.Fruits li').filter(function() {
return $(this).data('fruit').includes('Mango');
}).addClass('red')
.red {
color: red
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="Fruits">
<li data-fruit="['Mango','Apple']">Mango And Apple </li>
<li data-fruit="['Mango','Strawberry']"> Mango And Strawberry</li>
<li data-fruit="['Apple','Strawberry']"> Apple And Strawberry</li>
</ul>

作为替代方案,您可以使用 CSV,并在检索时将其转换为数组

$('.Fruits li').filter(function() {
return $(this).data('fruit').replace(/ /g, '').split(',').includes('Mango');
}).addClass('red')
.red {
color: red
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="Fruits">
<li data-fruit="Mango,Apple">Mango And Apple </li>
<li data-fruit="Mango,Strawberry"> Mango And Strawberry</li>
<li data-fruit="Apple,Strawberry"> Apple And Strawberry</li>
</ul>

关于javascript - 在 html 数据属性中存储值的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42416819/

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