使用jquery收集tr id

时间:2013-02-22 10:39:46

标签: php jquery

这里我有一个表结构

<table>
       <tr>
          <th>F name<th>
          <th>L name<th>
          <th>Add<th>
       </tr>
       <tr id="test3">
          <td>ssss</td>
          <td>sss</td>
          <td>sss</td>
        </tr>
        <tr id="test2">
           <td>ssss</td>
           <td>sss</td>
           <td>sss</td>
        </tr>
        <tr id="test1">
            <td>ssss</td>
            <td>sss</td>
            <td>sss</td>
        </tr>
 </table>

我想收集诸如

之类的内容
test1     test2     test3

使用jQuery或使用JavaScript

4 个答案:

答案 0 :(得分:8)

你可以尝试

$("tr[id]").each(function(){
  console.log(this.id);
});  

输出:test3 test2 test1

它将选择具有tr属性的id 同时为您的表分配一些idclass并在选择器中使用它,以便它只选择特定的表。


编辑:
只是意识到你想要以相反的顺序输出,所以你可以使用

$($("tr[id]").get().reverse()).each(function(){
      console.log(this.id);
 }); 

输出:test1 test2 test3

Live Demo

答案 1 :(得分:2)

并非所有人都拥有ID,但您可以查看使用jQuery中的$.each函数

var ids = new Array();

$('tr').each(function() {

    if ($(this).attr('id') != "undefined") {

        ids.push($(this).attr('id'));

    }

}

答案 2 :(得分:1)

以下将遍历表中包含ID的所有元素,然后将其附加到名为idString的字符串中:

$(document).ready(function() {
  var idElems = $('tr[id]'),
      idString = '';
  idElems.each(function() {
    idString += $(this).prop('id') + ' ';
  });

  console.log(idString);
});

演示:http://codepen.io/vobpler/pen/vjwAd

编辑:不确定为什么要在字符串中将其连接起来,但在$.each内,您可以通过$(this).prop('id')执行id所需的任何操作。参见Karma的解决方案。

答案 3 :(得分:0)

$(function () {

    $("tr").each(function () {
        alert($(this).attr('id'));
    })
})