1

这里我有一个表结构

<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

4 回答 4

8

你可以试试

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

输出:test3 test2 test1

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


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

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

输出:test1 test2 test3

现场演示

于 2013-02-22T10:43:15.877 回答
2

不是所有的 trs 都有 ID,但你可以看看使用$.eachjQuery 中的函数

var ids = new Array();

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

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

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

    }

}
于 2013-02-22T10:43:28.107 回答
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'). 查看 Karma 的解决方案。

于 2013-02-22T10:46:07.303 回答
0
$(function () {

    $("tr").each(function () {
        alert($(this).attr('id'));
    })
})
于 2013-02-22T10:45:37.700 回答