jQuery 選擇表格(table)裡的行和列

來源:互聯網
上載者:User

http://www.61dh.com/blog/2008/09/jquery-table.html#demo1

jQuery 選擇表格(table)裡的行和列

jQuery對錶格(table)的處理提供了相當強大的功能,比如說對錶格特定行(row)或列(column)進行排序、樣式改變等等。如果你的英文夠好,你可以讀讀這篇文章:jQuery table manipulation。本文只是介紹如何用jQuery語句對錶格中行和列進行選擇以及一些簡單樣式改變,希望它可以對jQuery表格處理的深層學習提供一些協助。

比如我們有這樣一個表格:

第一列 第二列 第三列 第四列
第一列 第二列 第三列 第四列
第一列 第二列 第三列 第四列
第一列 第二列 第三列 第四列
第一列 第二列 第三列 第四列

對行進行操作比較簡單:

  1. 如果我們要選擇第一行,我們可以用 $('tr:eq(0)')
  2. 如果我們要選擇第N行,我們可以用 $('tr:eq(n-1)')
  3. 如果我們要選擇奇數行,我們可以用 $('tr:odd')
  4. 如果我們要選擇偶數行,我們可以用 $('tr:even')

對列的操作相對麻煩一點,但是如果我們知道了其中原理也不難。表格裡沒有列的元素,第一列實際上是每一行的第一個地區(td)的組合。所以我們可以用迴圈來實現對行的選擇。

  1. 如果我們要選擇第一列並且對其樣式進行改變,我們可以用下面的語句來實現
    $(document).ready(function(){
      $('table').find('td').each(function(i){//搜尋表格裡的每一個區間
        if(i%4 == 0){ //‘4’代表表格總共有4列,如果區間編號被4整除,那麼它就屬於第一列
          $(this).addClass('col_1');}//給區間加上特定樣式
        });
    });
  2. 如果我們要選擇其它列,只需把上述代碼裡的i%4==0,進行相應的改變。記住:4代表表格的列數,如果你有10列就用10代替;選擇第一列,餘數等於0,選擇第二列,餘數應該等於1,如此類推。

示範: 點擊改變以上表格的第一列

更新(2009/10/20):感謝JOE的補充!我的方法要人為的更改表的列數,而JOE的方法不但代碼簡單而且不受列數的限制。

$(document).ready(function(){
  $('#button1').click(function(){  
    $('#demo1 tr').each(function() {
      $(this).find("td:first").css({color:"red", fontWeight:"bold"});
    });
  });
});

示範: 點擊改變以上表格的第一列

另外還可以改變選擇器從而改變偶數列或者奇數列。注意:第一列從0開始,所以td:odd代表偶數列。

<script type="text/javascript">
$(document).ready(function(){
  $('#10200902').click(function(){  
    $('#demo1 tr').each(function() {
    //alert("me");
    $(this).find("td:odd").css({color:"green", fontWeight:"bold"});
  });
});
});
</script>
//注意:第一列從0開始,所以td:odd代表偶數列
<button id="10200902">點擊改變以上表格的偶數列</button>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.