2015-09-08 36 views
0

基本上所有的元素,我有temp_val班上有幾個<span>元素包含1值我想隱藏。這些元素分散在我的html文件中。隱藏類,它包含文本

這裏是我的HTML代碼片段:

<div class="row" style="float: left; width: 80%; margin-top: 10px; "> 
    <strong>        
     <span class="temp_val">Value1</span> 
     <span style='visibility:hidden' class='temp_val_name'>1</span> 
    </strong><br> 
    <font size="2"> 
     <img src="assets/images/maps.png" height="12" width="7" style="vertical-align: middle;" >Image1 
     <span style='visibility:hidden' class='temp_val_name'>1</span> 
     <img src="assets/images/earphone.png" height="12" width="10" style="vertical-align: middle;" >Image2 
     <span style='visibility:hidden' class='temp_val_name'>0</span> 
     <img src="assets/images/envelope.png" height="11" width="14" style="vertical-align: middle;">Image3 
     <span style='visibility:hidden' class='temp_val_name'>1</span> 
    </font> 
</div> 

這裏是我的jQuery和它不工作:

$(".temp_val_name").each(function() { 
    if ($(this).text() == '1') { 
     $('.temp_val').hide(); 
    } 
}); 

而且這是我第一次jQuery代碼,但仍無法正常工作:

if($('.temp_val_name').text() == '1') { 
    $('.temp_val').hide(); 
} 

我還有很多要隱藏的元素。我只給你看了幾個。 我該如何解決這個問題?

+0

@Epodax哎呀對不起,因爲這是一個建議標籤。我將刪除它。抱歉。 –

+1

也''已被棄用,不應再使用。 –

+3

'if($(this).text()=='1')$(this).hide();',當然? –

回答

0

請嘗試下面的代碼它應該爲你工作。

$(".temp_val_name").each(function() { 
    if ($(this).text() === '') { 
     $('.temp_val').hide(); 
    } 
}); 
0

使用filter()篩選出具有類temp_val_name元素和具有的innerText爲1和隱藏具有類temp_val

$(".temp_val_name").filter(function() { 
 
    return $(this).text().trim() == 1; 
 
}).hide();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> 
 
<div class="row" style="float: left; width: 80%; margin-top: 10px; "> 
 
    <strong> 
 
    <span class="temp_val">Value1</span> 
 
    <span class='temp_val_name'>1</span> 
 
    </strong> 
 
    <br> 
 
    <font size="2"> 
 
    <img src="assets/images/maps.png" height="12" width="7" style="vertical-align: middle;">Image1 
 
    <span class='temp_val_name'>1</span> 
 
    <img src="assets/images/earphone.png" height="12" width="10" style="vertical-align: middle;">Image2 
 
    <span class='temp_val_name'>0</span> 
 
    <img src="assets/images/envelope.png" height="11" width="14" style="vertical-align: middle;">Image3 
 
    <span class='temp_val_name'>1</span> 
 
    </font> 
 
</div>

+1

downvote的原因是什麼? – Tushar

+0

我想你是針對所有元素而不是'temp_val'的兄弟姐妹。 – Jai

+0

這不起作用。它也不適用於你的代碼片段。 –

0

我猜的元素應該是

if($(this).html() == '1') { 
+0

不,這是錯誤的答案。 –

0

嘗試給予e類的名稱作爲數組

例如: - temp_val_name[]在您的元素和應用相同的jQuery中。

-1

嘗試通過身體循環,並檢查價值1,如果發現然後隱藏該跨度。

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("body span").each(function() { 
      var val = parseInt($(this).html()); 
      if($.isNumeric(val) && val == 1){ 
       $(this).hide() 
      } 
     }); 
    }); 
</script> 
+0

downvote的原因 –

+0

我沒有downvote它,只知道你(我是提問者) –

0

​​

$('.temp_val_name').filter(function() { 
    return !!($.trim($(this).text()) == '1'); 
}).hide(); 
相關問題