2

我需要使用 jquery 在此列表项中选择元素的类

列表项在这里:-

<li><a href="#" title="general news"><i class="icon-rss"></i> news</a></li>

我试过了,但不高兴,它说未定义:-

 $(".btn-group li").click(function () {
    var className = $(this).children("i").attr('class');
    alert(className);
 });
4

6 回答 6

6

i不是元素的子li元素,它是元素的子a元素,因此$(this).children("i")返回一个空集。

您可以改用.find [docs],它将搜索任何后代:

$(this).find('i').attr('class');
于 2013-02-08T18:29:07.370 回答
1
 $(this).find("i").attr('class');
于 2013-02-08T18:29:20.047 回答
0

$(this).find("i").attr('class')

于 2013-02-08T18:29:54.903 回答
0

这将为您完成:

 $(".btn-group li").click(function () {
   $(this).find('i').attr('class');
 });
于 2013-02-08T18:31:53.463 回答
0

问题是它$(this).children("i")不返回任何东西,将其替换为$('i', this)

于 2013-02-08T18:32:47.393 回答
0

试试这个

$('li').click(function(){
  var className = $(this).find('i').attr('class')
  alert('className is: ' + className)
});

演示:http: //jsfiddle.net/y6nP7/

于 2013-02-08T18:34:14.263 回答