jquery中的li元素列表

时间:2012-04-07 22:28:29

标签: javascript jquery

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

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

Firebug说:

  

$(“#example”)。find('LI A')。hasClass(“sth”)。每个都不是函数

此代码中的问题是each,因为如果我将其删除,则不会给我任何错误。

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

2 个答案:

答案 0 :(得分:4)

hasClass函数返回boolean而不是jQuery对象。因此它没有each函数。

你可能意味着这个:

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

或者这(更好):

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

阅读docs

  

.hasClass(className)返回:Boolean

     

说明:确定是否为任何匹配的元素分配了给定的类

答案 1 :(得分:2)

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

您必须将该类附加到选择器

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

Demo