我有以下代码:
<div class="field-name-new">
<div class="field-label">New</div>
<div class="field-items">
<div class="field-item">0</div>
</div>
</div>
仅当 div.field-item 的值为 1 时才需要显示 div.field-label ,如果值为 0 则隐藏它。
我有以下代码:
<div class="field-name-new">
<div class="field-label">New</div>
<div class="field-items">
<div class="field-item">0</div>
</div>
</div>
仅当 div.field-item 的值为 1 时才需要显示 div.field-label ,如果值为 0 则隐藏它。
var $item = $('.field-item');
if ($item.text() == 0) {
$item.parent().siblings('.field-label').hide();
}
使用toggle
方法根据条件显示或隐藏元素:
$('.field-label').toggle($('.field-item').text() == '1');
$(document).ready(function(){
$('.field-item').each(function(){
if($(this).text() == 0){
$(this).parent().prev().hide();
}else{
$(this).parent().prev().show();
}
});
});
$('.field-label').each(function() {
$(this).css('display', $(this).next('.field-items').find('.field-item').is(':contains("1")') ? 'block' : 'none');
});
div.field-item
假设每个里面只有一个,div.field-items
这应该可以工作:
$('.field-items').each(function(i,el)
{
var field_item = $(el);
if(field_item.text() == 1)
$(this).prev().show();
else
$(this).prev().hide();
});
示例:http: //jsfiddle.net/zsA7W/
您可以使用toggle()
布尔标志
$('.field-name-new').each(function() {
var $this = $(this);
$this.find('.field-label').toggle(!!$this.find('.field-item').text())
});
我创建了一个each
以防你有多个.field-name-new
块
它工作正常!
$(document).ready(function() {
if($(".field-item").html() == '0'){
$("div.field-label").hide();
}
});
更新了 Jsfiddle: http: //jsfiddle.net/ipsjolly/m4BTd/4/通过更改值来测试它<div class="field-item">0</div>
并单击Run