我想在wordpress网站上这样做。我已经搜索并尝试了一些已经发布的建议,但没有一个有效。
如果页面加载时包含零,我想隐藏范围。
我使用了以下代码(置于头部)但它不会隐藏跨度。
<script type="text/javascript">
(function ($) {
var propertydata = $('span.property-data');
if (propertydata.text().trim() === '0') {
propertydata.closest('span.propertydata').hide();
}
});
</script>
这是我试图隐藏的HTML:
<div id="dbst-show12" class="column rows other">
Year Built :
<span class="property-data">0</span>
</div>
最终,我希望隐藏父母&#34;列&#34;如果可能的话,如果我能让零消失,我会解决。
答案 0 :(得分:0)
您可以使用jQuery选择器选择范围内的所有0,如下所示:
var selecton = $("span:contains(0)");
然后你可以使用jQuery .hide()方法隐藏所有元素:
selection.hide();
您还需要确保该功能包含在$(文档).ready中,以便浏览器知道一旦页面加载就可以运行您的功能。
这将是整个片段:
$(document).ready(function(){
var selection = $("span:contains(0)");
selection.hide();
});
以下是指定代码的JSFiddle链接:https://jsfiddle.net/kgill/uzpqdsoj/1/
您可以通过选择带有jQuery选择器的div并以相同的方式隐藏它来隐藏整个列。
答案 1 :(得分:0)
问题在于:
var propertydata = $('span.property-data');
proertydata从所有跨文本中获取所有值,因此它永远不会等于0。
您可能希望这样做:
<script type="text/javascript">
(function ($) {
jQuery.each( $('span.property-data'), function( i, val ) {
if ($(val).text().trim() === '0') {
$(val).hide(); //hides only the span
$(val).parent().hide(); //if you want to hide parent div also
}
});
})(jQuery);
</script>
这是一个JSFiddle: https://jsfiddle.net/bv7u4hxb/1/