0

我不知道为什么我的代码不起作用。

$("#example").find('LI A').hasClass("sth").each(function(){alert($(this))});

萤火虫 说:

$("#example").find('LI A').hasClass("sth").each 不是函数

这段代码的问题是each,因为如果我删除它,它不会给我任何错误。

我需要将“a”元素的建立值传递给数组。

4

2 回答 2

4

hasClass函数返回布尔值而不是 jQuery 对象。因此它没有这个each功能。

你可能是这个意思:

$("#example").find('LI A.sth').each(function(){alert($(this))});

或者这个(哪个更好):

$("#example li a.sth").each(function(){alert($(this))});

阅读文档

.hasClass( className )返回:布尔值

描述:确定任何匹配的元素是否被分配给给定的类

于 2012-04-07T22:30:50.207 回答
2

您的 hasClass 应用程序不正确。它不返回一个 jQuery 对象,而是一个布尔值,因此.each()不能应用于它。

您必须将类附加到选择器

$("#find").click(function (){
    $("#example").find('a.sth').each(function(){
        $("#test").append($(this));
    });
 });

演示

于 2012-04-07T22:31:24.227 回答