如何使用jQuery获取HTML表格中的第一个id?

时间:2014-05-05 05:46:51

标签: javascript jquery html

我关注HTML表格:

<table id="blacklistgrid_1"  class="table table-bordered table-hover table-striped">
                      <thead>
                        <tr id="jumbo">
                          <th style="vertical-align:middle">Products</th>
                          <th style="vertical-align:middle">Pack Of</th>
                          <th style="vertical-align:middle">Quantity</th>
                          <th style="vertical-align:middle">Volume</th>
                          <th style="vertical-align:middle">Unit</th>
                          <th style="vertical-align:middle">Rebate Amount</th>
                        </tr>
                      </thead>
                      <tbody class="apnd-test">
                        <tr id="reb1_1">
<td><input type="text" name="pack[1]" id="pack_1" value="" class="form-control" size="8"/></td>
                          <td><input type="text" name="quantity[1]" id="quantity_1" value="" class="form-control" size="8"/></td>
                          <td><input type="text" name="volume[1]" id="volume_1" value="" class="form-control" size="8"/></td>
<td><input type="text" name="amount[1]" id="amount_1" value="" class="form-control" size="9"/></td>
</tr>
                      </tbody>
<tfoot>
                        <tr id="reb1_2">
                          <td><button style="float:right; margin-bottom: 20px" class="products" type="button" class="btn btn-default" onclick="">&nbsp;Add</button></td>
                          <td></td>
                          <td></td>
                          <td></td>
                          <td></td>
                          <td></td>
                        </tr>
                      </tfoot>                                           
                    </table>

现在我想从第一行获取id。在这种情况下,id为reb1_1。为了得到它我尝试下面的代码,但它没有用。

$(document).ready(function() {
$('.products').click(function () {
var row = $(this).closest('table tbody:tr:first').attr('id');
    alert(row);
});

});

谢谢。

3 个答案:

答案 0 :(得分:8)

首先转到表格tbody然后找到tr然后过滤第一行,如下面

var row = $(this).closest('table').find(' tbody tr:first').attr('id');

或者可以尝试

 var row = $(this).closest('table').find(' tbody tr:eq(0)').attr('id');

参考 :first 和: eq

答案 1 :(得分:2)

如演示所示进行更改: -

http://jsfiddle.net/avmCX/38/

 $(document).ready(function() {
    $('.products').click(function () {
  var row = $(this).closest('table').find('tbody tr:first').attr('id');


        alert(row);
    });

    });

如需更多信息,请点击此处: -

http://api.jquery.com/first/

答案 2 :(得分:0)

将您的功能更改为:

$(document).ready(function() {
    $('.products').click(function () {
        var id =  $(this).closest("table").find("tbody>tr").first().attr("id");
        alert(id);
    });
});

这会显示你的身份。