Jquery 包含并显示目标 div block

标签 jquery css

我有一个包含选择器的 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/

相关文章:

javascript - 如何在backbone.js中显示html内容

javascript - 指令中的元素或 $(element)

html - 如何将此页面的内容居中并放大?

javascript - span inside 按钮,在 Firefox 中不可点击

javascript - 按键时突出显示 HTML 元素中的字符

javascript - Jquery:在 IE 上将事件更改为输入文件

jquery - Blueimp jQuery 文件上传rails : BMP image preview issue

html - 响应式视频未按预期调整

javascript - 动态更改 Webkit 过滤器值

html - 添加 xs 值后大屏幕上的 Bootstrap 列困惑