此代码无效:
$("div").hasClass("testSection").attr("id");
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息:
TypeError:$(...).hasClass(...).attr不是函数
知道问题可能是什么?
.hasClass("testSection")
返回一个布尔值.它不会将jQuery对象返回到链.
您也明白,在匹配多个元素时,使用特定函数,例如.attr
从第一个选定元素返回.
$("div").attr('id'); => $('div').eq(0).attr('id');
Run Code Online (Sandbox Code Playgroud)
问题是因为hasClass()
返回一个布尔值,而不是 jQuery 对象。因此,调用attr()
布尔值会导致您看到的错误。
假设只有一个 div 具有指定的类,您可以在选择器中使用该类:
var id = $("div.testSection").prop("id");
Run Code Online (Sandbox Code Playgroud)
如果该类有多个 div,则需要循环:
$("div.testSection").each(function() {
var id = this.id;
// do something with the id...
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4802 次 |
最近记录: |