如何确定.attr('class')
是否存在?
我正在使用此代码:
if(jQuery(this).attr('class') != undefined && jQuery(this).hasClass('myclass')) {
//Do something
}
它似乎不起作用。
答案 0 :(得分:20)
这取决于你想要什么。是否要检查元素是否具有class属性,例如:
<div class></div>
<div class=""></div>
<div class="abc"></div>
如果是,请使用:
if ($('div').attr('class') != undefined)...
如果您要检查元素是否具有特定类,请使用:
if ($('div').hasClass('abc'))...
答案 1 :(得分:1)
试试这个..
if(jQuery('#id1').attr('class') =="") { alert($('#id1').attr('class')); }
<div id="id1">test</div>
答案 2 :(得分:1)
你可以通过在jquery对象上调用'length'来检查是否存在任何类的元素。
$('.myclass').length
答案 3 :(得分:0)
如果属性类不存在,则返回值为null或空字符串。
答案 4 :(得分:0)
此代码实际上有效:fiddle
HTML:
<div></div>
<div class="myclass"></div>
<div class="blah"></div>
<div></div>
<div class="myclass"></div>
<div class="myclass"></div>
<div></div>
<div class="myclass andAnotherClass"></div>
JS:
$("div").each(function(){
if(jQuery(this).attr('class') != undefined && jQuery(this).hasClass('myclass')) {
jQuery(this).html("I have it");
} else {
jQuery(this).html("I don't have it");
}
});