大家好我正在尝试获取我点击的元素的父元素的类
例如:
<div class="mydiv"><a href="#" class="link">Click me</a></div>
我想得到父div(mydiv)的类
我尝试了这个,但它不起作用:
$(document).ready(function(){
$(".link").click(function(){
var div=$(this).parent().className;
alert(div);
});
});
它总是给我(未定义)。任何人都可以帮忙吗?
答案 0 :(得分:5)
.parent()
给出jquery对象,className是DOM元素的属性,所以请尝试:
var div=$(this).parent()[0].className; // use [0] to get the DOM element and get the property
或
var div= $(this).parent().attr("class"); //Use jquery attr to get the value of the attribute class
答案 1 :(得分:1)
使用.attr()
{link}
$('.element').attr('class'); // Get class(es)
$('.element').attr('id'); // Get the ID
答案 2 :(得分:1)
使用.attr()
尝试:
$(document).ready(function(){
$(".link").click(function(){
var div=$(this).parent().attr('class');
alert(div);
});
});
答案 3 :(得分:1)
className
是HTML Elements的属性,而不是$(this).parent()
给出的jQuery对象。您可以使用:
$(this).parent()[0].className;
访问表示对象($(this).parent()[0]
)的DOM对象,然后查找className
属性。
请注意,如果您将多个类应用于某个元素,那么className
属性将返回一个由所有类名称分隔的空格组成的字符串。
https://developer.mozilla.org/en-US/docs/Web/API/element.className
在较新的浏览器上,您可以使用classList
属性,这样可以更轻松地处理类:
https://developer.mozilla.org/en-US/docs/Web/API/element.classList
答案 4 :(得分:1)
试试这个..... $(this).parent().attr('class');
......我相信这会有效:)
答案 5 :(得分:1)
这应该完成工作:
var parentClass = $('#childElement').parent().attr('class');