gpt4 book ai didi

javascript - 如何查找给定数组中包含值的 HTML 元素?

转载 作者:行者123 更新时间:2023-11-28 04:49:15 27 4
gpt4 key购买 nike

问题

给定这段代码:

<ul>
<li><input type="hidden" value="1"/>Choice 1</li>
<li><input type="hidden" value="2"/>Choice 2</li>
<li><input type="hidden" value="3"/>Choice 3</li>
<li><input type="hidden" value="4"/>Choice 4</li>
<li><input type="hidden" value="5"/>Choice 5</li>
</ul>

如何正确选择输入值包含在数组 [1, 3, 4] 中的列表元素?


研究方向

我在这段代码中尝试了一些解决方案,但似乎没有什么效果很好。

alert($("li").has("input[value='3']").text());  // Not a solution
alert($("li").has("input[value='[1,3,4]']").text()); // Not working
alert($("li").has("input[value=[1,3,4]]").text()); // Not working
alert($("li").has("input[value=['1','3','4']]").text()); // Nope
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li><input type="hidden" value="1"/>Choice 1</li>
<li><input type="hidden" value="2"/>Choice 2</li>
<li><input type="hidden" value="3"/>Choice 3</li>
<li><input type="hidden" value="4"/>Choice 4</li>
<li><input type="hidden" value="5"/>Choice 5</li>
</ul>

最佳答案

您可以使用 filter() 从相关的子 input 元素中找到 li

var valueArr = [1, 3, 4];
var $li = $('li').filter(function() {
return valueArr.indexOf(parseInt($(this).find('input').val(), 10)) != -1;
});
$li.css('color', '#C00'); // just to make the effect obvious
console.log($li.text());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li>
<input type="hidden" value="1" />Choice 1</li>
<li>
<input type="hidden" value="2" />Choice 2</li>
<li>
<input type="hidden" value="3" />Choice 3</li>
<li>
<input type="hidden" value="4" />Choice 4</li>
<li>
<input type="hidden" value="5" />Choice 5</li>
</ul>

关于javascript - 如何查找给定数组中包含值的 HTML 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36935909/

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