当前位置: 编程技术>jquery
jQuery 点击复选框 高亮显示选中行
来源: 互联网 发布时间:2014-09-03
本文导语: 使用jquery实现的点击复选框则高亮显示选中行的一例代码。如下: 代码示例: jQuery点击复选框 高亮显示选中行 全选、反选 - www. table{ border:0;border-collapse:collapse;} td{ font:normal 12px/17px Arial;padding:2px;widt...
使用jquery实现的点击复选框则高亮显示选中行的一例代码。如下:
代码示例:
jQuery点击复选框 高亮显示选中行 全选、反选 - www.
table{ border:0;border-collapse:collapse;}
td{ font:normal 12px/17px Arial;padding:2px;width:100px;}
th{ font:bold 12px/17px Arial;text-align:left;padding:4px;border-bottom:1px solid #333;}
.even{ background:#FFF38F;} /* 偶数行样式*/
.odd{ background:#FFFFEE;} /* 奇数行样式*/
.selected{ background:#FF6500;color:#fff;}
//插件编写
(function ($) {
$.fn.extend({
"alterBgColor": function (options) {
//设置默认值
options = $.extend({
odd: "odd", /* 偶数行样式*/
even: "even", /* 奇数行样式*/
selected: "selected" /* 选中行样式*/
}, options);
$("tbody>tr:odd", this).addClass(options.odd);
$("tbody>tr:even", this).addClass(options.even);
$('tbody>tr', this).click(function () {
//判断当前是否选中
var hasSelected = $(this).hasClass(options.selected);
//如果选中,则移出selected类,否则就加上selected类
$(this)[hasSelected ? "removeClass" : "addClass"](options.selected)
//查找内部的checkbox,设置对应的属性。
.find(':checkbox').attr('checked', !hasSelected);
});
//表头中的checkbox (全选 反选)
$("thead>tr th:first :checkbox:first ").click(function () {
//判断当前是否选中
var hasSelected = $(this).attr("checked");
//如果选中,则移出selected类,否则就加上selected类
$('tbody>tr')[!hasSelected ? "removeClass" : "addClass"](options.selected);
if (hasSelected)
$('tbody>tr :checkbox').attr("checked",true);
else
$('tbody>tr :checkbox').attr("checked",false);
});
// 如果单选框默认情况下是选择的,则高色.
$('tbody>tr:has(:checked)', this).addClass(options.selected);
return this; //返回this,使方法可链。
}
});
})(jQuery);
//插件应用
$(function(){
$("#table2")
.alterBgColor() //应用插件
.find("th").css("color","red");//可以链式操作
});
姓名性别暂住地
张三
男
浙江宁波
李四
女
浙江杭州
王五
男
湖南长沙
赵六
男
浙江温州
Rain
男
浙江杭州
MAXMAN
女
浙江杭州