如何使用JQuery获取内部tr标签?

时间:2011-07-06 22:18:23

标签: javascript jquery

我试图从tbody中的tr标签中获取documentnumber属性,并将其保存在数组中。

下面是html,我正在研究

<tbody class="line-item-grid-body">
    <tr data-group-sequence-number-field-index="" data-sequence-number-field-index="1" documentnumber="80" documentid="4133604" parent="80" class="line-item parent-line-item line-item-show reorderable-row  droppable-element">
        <td> 
                 <table>
                   <tbody>
            <tr></tr>
                   </tbody>
                 </table>
        </td>
   </tr>
    <tr data-group-sequence-number-field-index="" data-sequence-number-field-index="1" documentnumber="80" documentid="4133604" parent="80" class="line-item parent-line-item line-item-show reorderable-row  droppable-element">
   </tr>
</tbody>

这就是我所做的,这是行不通的。如果我没有指定特定的类,那么系统也会抓取内部tr标签,我不想要

var docs = jQuery("#line-item-grid").find('tbody').find("tr[class='line-item parent-line-item line-item-show reorderable-row  droppable-element']");

for (i=1;i<=docs.length;i++)
{
var tempValue = jQuery(docs[i]).attr('documentnumber');
alert(tempValue);
}

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

有几种方法可以解决这个问题。我会做以下事情......

var docs = $('.line-item-grid-body>tr');

Docpage:Child selector

另一种选择:

var docs = $('.line-item-grid-body').children('tr');

收藏并经常浏览此页面Selectors - jQuery API

答案 1 :(得分:2)

尝试将此作为选择器

  $('tbody > tr','#line-item-grid');

答案 2 :(得分:0)

嗯,我没有测试过这个(所以检查拼写错误),但是在我的脑海中,我会尝试这样的事情:

jQuery(".line-item-grid tbody > tr").each(function() {
  alert($(this).attr('documentnumber');
});

您可以一个接一个地定义选择器,与CSS中的几乎相同。 还要检查子选择器(http://api.jquery.com/child-selector/)以选择直接子元素。

希望有所帮助