获取上层li文本

时间:2014-06-18 17:30:45

标签: javascript jquery

所以我目前在我的页面上有一个这样的列表

<li class="head">
    <b>Introduction</b>
    <ul>
        <li class="sub">somethingsomething</li>
    </ul>
</li>

此列表与sortable一起使用,因此用户可以决定订单,并且我将此信息传递给grails控制器以在应用程序逻辑中使用。因此,我试图将其读入,并将包含在“head”和“sub”类中的文本放在2个不同的数组中。但是,当我使用jquery选择器获取head元素并获取元素的text属性时,它也包含内部列表。

 $('#divname').find("ul > li.head").each(function()                              
      {                                                             
          var current = $(this);
          console.log(current.text());
      });

结果为Introductionsomethingsomething

有没有办法只从列表中获取“简介”文本,并忽略嵌套<ul><li.sub>中的文字?由于它是嵌套的,我无法弄清楚如何使用jQuery的:not()选择器

2 个答案:

答案 0 :(得分:1)

您可以使用jquery标记名选择器找到b标记。就像这样:

 var current = $(this).find('b');
 console.log(current.text());

<强> Working Demo

答案 1 :(得分:0)

可能是这个解决方案:

<script>
$('#divname').find("ul > li.head").each(function()                              
      {                                                             
          var current = $(this).find("b");
          console.log(current.text());
      });
</script>