我有一个包含选择器的 jquery,我想定位匹配时要显示的 div。
这是我的代码
<div style="display:none" id="food">Spaghetti Banana Pizza</div>
<div style="display:none" id="result">Display this fruit!</div>
如果每个 div = food(即香蕉)都匹配,则显示“显示此水果!” div block 。
这是未正确呈现的代码 -
<script>
$( "div[id^=food]:contains('Banana')").css( "display", "block" );
</script>
错误:它显示 Banana。它应该是 div=result。
有什么想法吗?
最佳答案
我的理解是,如果它们都包含 Banana
,您只想显示结果 div。
您需要根据总数检查所有这些。可以使用filter()
/* create collection of all possible elements so they can be counted */
var $food=$('.food');/* use class instead of duplicate ID*/
/* create boolean based on matching counts*/
var showresult=$food.filter(':contains(Banana)').length === $food.length;
$('#result').toggle( showresult); /* toggle will show/hide depending on boolean*/
关于Jquery 包含并显示目标 div block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25861287/