Важно понимать, что существуют пустые атрибуты класса, а также элементы без атрибута класса, но для их выбора требуются разные тесты.
Есть ряд тестов, которые делают разные вещи. Вот наш HTML для наших тестов:
<div class="">Empty Class Attribute </div>
<div class="column">Full Class Attribute </div>
<div>No Class Attribute </div>
Теперь давайте запустим наши тесты (первая часть - просто строка, которая помогает нам узнать, что только что было вызвано в предупреждении, в противном случае это бессмысленно) :
$(document).ready(function(e){
// Outputs "Empty Class Attribute Full Class Attribute"
alert( "div[class] : " + $('div[class]').text() );
// Outputs "Full Class Attribute"
alert( "div[class!=''] : " + $('div[class!=""]').text() );
// Outputs "Empty Class Attribute"
alert( "div[class=''] : " + $('div[class=""]').text() );
// Outputs "No class Attribute"
alert( "div:not([class]) : " + $('div:not([class])').text() );
});
Вы можете просмотреть этот код в своем браузере, посетив здесь: http://jsbin.com/ijupu
Теперь, вооружившись этими знаниями, если вы хотите выбрать каждый элемент div
на странице с пустым атрибутом и без атрибута, используйте следующий селектор:
$("div[class=''], div:not([class])");