2013-08-04 50 views
2

我有多個div如下;每個功能的所有div的內容

<div class="error"></div> 
<div class="error">foo</div> 
<div class="error">bar</div> 
<div class="error"></div> 
<div class="error">ABC</div> 

正如你可以在上面看到,一些DIV有內容,其中一些則不是。我需要選擇所有包含jQuery每個函數內容的div。

請幫幫我。

問候。

回答

2

試試這個:

$('.error').each(function(index){ 
     var content = $(this).text(); 
     if(typeof content != 'undefined' && content!=''){ 
     //your code 
     } 
    }); 

DEMO

在演示的jsfiddle耀能看到到您的控制檯內的div打印內容不爲空

+0

沒有必要,除非你懷疑OP沒有一個混亂與'$(文檔)jQuery的答案.ready'處理程序。 – Alnitak

2

試試這個:

$('.error').filter(function() { 
    return $(this).html() != ''; 
}); 

each例如:

$('.error').filter(function() { 
    return $(this).html() != ''; 
}).each(function(index, value) { 
    console.log($(value).html()); 
}); 

jsFiddle

1

$('div.error:not(:empty)'),會給你的元素

2

,你可以簡單地使用:不和:空濾出空白的div像下面

$('.error:not(.error:empty)').each(function(){ 
    // Your code goes over here 
}); 

請檢查這個http://jsfiddle.net/tDwwg/

1

爲了提高效率,使用.not()排除:empty元素:

$('.error').not(':empty').each(...) 
相關問題