如果html等于0,则javascript / jQuery隐藏

时间:2016-05-09 08:59:52

标签: javascript php jquery html wordpress

我已经使用Wordpress构建了此网站www.piano-warehouse.co.uk/category/upright-pianos/,并使用了一个插件来计算如果对产品应用了折扣,则节省的金额。我想修改设置,以便如果没有应用任何折扣,并且没有保存金额来隐藏您的保存部分。我假设javascript或jQuery将成为票证,但我对这些语言有非常基本的理解,并且非常感谢构建此查询的任何帮助。

到目前为止,我已经尝试将此添加到我的函数文件中,没有任何乐趣

function you_save_hide () {
    if ($("span.yousave_list_price").text() == "0") {
        $("span.yousave_list").hide();
    }
}

3 个答案:

答案 0 :(得分:0)

我检查了你的网站,span.yousave_list_price是span.yousave_list的下一个元素,我相信你并不希望隐藏所有span.yousave_list为0.但只有那些有span.yousave_list_price的。所以我们将选择所有的span.yousave_list_price - >检查文本是否为0 - >然后我们选择它的父母和 - >在父母中我们隐藏了span.yousave_list。

function you_save_hide () {
    $("span.yousave_list_price").each(function(){
        if ($(this).text().trim() == "0"){
            $(this).parent().closest("span.yousave_list").hide(); //hide the nearest .yousave_list when the yousave_list_price equals 0
        }
    });
}

如果您在页面加载时执行此功能,请务必在$(document).ready(function(){...}

中调用它

答案 1 :(得分:0)

从链接中我可以看到$("span.yousave_list_price")是否包含另一个DOM元素

<span class="yousave_list_price">
<span class="amount">Some Value</span>
</span>

因此,如果您要隐藏此span.yousave_list_price,则可能需要执行此操作

var _getAmountList = $('.amount');
_getAmountList.each(function(){
// equalizing with £0 just for demo
// You can use regex with fine tune it.
if($(this).text().trim() ==="£0"){ 
  $(this).parent().hide()
}
})

JSFIDDLE

答案 2 :(得分:0)

调用此函数时必须确保页面已准备好

$(document).ready(function(){
    you_save_hide();
});