Jquery 如何获取hasClass()的父级?
我只需要获取我用Jquery 如何获取hasClass()的父级?,jquery,Jquery,我只需要获取我用hasClass()找到的类的父类,但它不起作用 if($('.test div').hasClass('has-error')){ console.log($(this.parent().className) } 代码的问题是此将引用窗口,因为您不在元素的范围内 hasClass在这里也有点多余,因为您可以直接选择具有给定类的元素,然后执行逻辑 最后,请注意,className不是jQuery对象的有效属性。大概attr('class')就是您所需要的。试试这个: var
hasClass()
找到的类的父类,但它不起作用
if($('.test div').hasClass('has-error')){
console.log($(this.parent().className)
}
代码的问题是
此
将引用窗口,因为您不在元素的范围内
hasClass
在这里也有点多余,因为您可以直接选择具有给定类的元素,然后执行逻辑
最后,请注意,className
不是jQuery对象的有效属性。大概attr('class')
就是您所需要的。试试这个:
var className=$('.test div.has-error').parent().attr('class');
console.log(className)
$(“.test div”)。每个(函数(){
if($(this).hasClass('has-error')){
console.log($(this.hasClass('has-error'))
console.log($(this.parent().attr(“类”))
}
})
您可以使用过滤器
返回带有has class的元素,然后获取其父元素的class
var c=$('.test div').filter(函数(){
返回$(this.hasClass('has-error'))
}).parent().attr('class')
控制台日志(c)
为什么不$('.test div.has-error')
?也许出于某种原因,op想用hasClass
这样做,那么hasClass就没有用了,因为所有这些div都有这个类,也许他有一些理由需要使用hasClass谢谢你的回答和解释,这让一切都清楚了。