jquery實現帶複選框的表格行選中刪除時高亮顯示

來源:互聯網
上載者:User

通過jquery技術來動作表格是件簡單的事,通過jquery的文法,可以很輕鬆的完成表格的隔行換色,懸浮高亮,在實際的應用中可能會出現表格中帶複選框的,刪除時,將複選框所在的行的記錄刪除。在這的地方,可以加個特效,單擊某行的同時將該行的複選框選中,該行的背景色也高亮顯示。這樣給人的感覺非常好。

效果如下:
 
我做的這裡有兩個功能:
功能1、單擊某行,該行的複選框被選中,同時改變一下背景色。
功能2、單擊全選/全不選標籤後,改變行的顏色。
兩個功能我封裝到了js檔案中,使用的時候引入就行了。
先看一下CSS的代碼,我封裝到了一個css檔案中
複製代碼 代碼如下:
.selected{
background:#FF6500;
color:#fff;
}

在看js檔案的代碼:
功能1的代碼:
複製代碼 代碼如下:
/**
* 設定含有複選框的表格中的背景色
*/
$(document).ready(function()
{
/**
* 表格行被單擊的時候改變背景色
*/
$("#tablight tr:gt(0)").click(function() //擷取第2行後
{
if ($(this).hasClass("selected"))//判斷是否選中
{
$(this).removeClass("selected").find(":checkbox").attr("checked",false);//選中移除樣式
}
else//設定選中
{
$(this).addClass("selected").find(":checkbox").attr("checked",true);//未選中添加樣式
}
});
});

功能2的代碼:
複製代碼 代碼如下:
/**
* 單擊全選和反選之後改變背景色
*/
function setColor()//設定tr的背景顏色
{
var checkboxs = $("#tablight tr:gt(0) input[type=checkbox]");//得到所有的複選框
var boxeds = $("#tablight tr:gt(0) input[type=checkbox]:checked");//得到被選擇的複選框
if(boxeds.length > 0)
{
checkboxs.parent().parent().addClass("selected");//複選框在td裡
}
else
{
checkboxs.parent().parent().removeClass("selected");
}
}

如果想要使代碼生效,需要給表格加上id屬性,屬性值為“tablight”,同時全選/全不選之後調用setColor方法就行了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.