表格的变色问题

本文介绍了一种利用jQuery库来实现网页表格行点击选择效果的方法。通过简单的代码实现了奇偶行不同样式显示,并能够根据表格内的复选框状态改变行背景色,增强了用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


2011-07-21 16:15 by Rollen Holt, 93 阅读, 0 评论, 收藏 , 编辑

起初的样式如下:

选择之后的样式如下:

代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
< html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 
< head >
 
< title ></ title >
 
< link href="css/style.css" rel="stylesheet" type="text/css" />
 
<!--   引入jQuery -->
 
< script src="../scripts/jquery-1.3.1.js" type="text/javascript"></ script >
 
< script type="text/javascript">
 
   $(function(){
 
         $("tbody>tr:odd").addClass("odd");
 
         $("tbody>tr:even").addClass("even");
 
         $('tbody>tr').click(function() {
 
             //判断当前是否选中
 
             var hasSelected=$(this).hasClass('selected');
 
             //如果选中,则移出selected类,否则就加上selected类
 
             $(this)[hasSelected?"removeClass":"addClass"]('selected')
 
                 //查找内部的checkbox,设置对应的属性。
 
                 .find(':checkbox').attr('checked',!hasSelected);
 
         });
 
         // 如果复选框默认情况下是选择的,则高色.
 
         $('tbody>tr:has(:checked)').addClass('selected');
 
   })
 
</ script >
 
</ head >
 
< body >
 
     < table >
 
         < thead >
 
             < tr >< th > </ th >< th >姓名</ th >< th >性别</ th >< th >暂住地</ th ></ tr >
 
         </ thead >
 
         < tbody >
 
             < tr >< td >< input type="checkbox" name="choice" value=""/></ td >
 
                 < td >张山</ td >< td >男</ td >< td >浙江宁波</ td ></ tr >
 
             < tr >< td >< input type="checkbox" name="choice" value="" /></ td >
 
                 < td >李四</ td >< td >女</ td >< td >浙江杭州</ td ></ tr >
 
             < tr >< td >< input type="checkbox" name="choice" value="" checked='checked' /></ td >
 
                 < td >王五</ td >< td >男</ td >< td >湖南长沙</ td ></ tr >
 
             < tr >< td >< input type="checkbox" name="choice" value="" /></ td >
 
                 < td >找六</ td >< td >男</ td >< td >浙江温州</ td ></ tr >
 
             < tr >< td >< input type="checkbox" name="choice" value="" /></ td >
 
                 < td >Rain</ td >< td >男</ td >< td >浙江杭州</ td ></ tr >
 
             < tr >< td >< input type="checkbox" name="choice" value="" /></ td >
 
                 < td >MAXMAN</ td >< td >女</ td >< td >浙江杭州</ td ></ tr >
 
         </ tbody >
 
     </ table >
 
</ body >
 
</ html >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值