首页 新闻 搜索 专区 学院

jquery中的toggle()为何不能让自己选中

0
悬赏园豆:5 [已解决问题] 解决于 2010-08-13 08:14

先看代码:

1 <html>
2 <head>
3 <title>JQuery实现全选</title>
4 <script language="javascript" type="text/javascript" src="file:///G:/programming/js/jQuery1.3.2/jquery-1.3.2.min.js"></script>
5 <script type="text/javascript">
6 function selectall()
7 {
8 $('#selectall').toggle(
9 function(){$(':checkbox').attr('checked',true);},
10 function(){$(':checkbox').attr('checked',false);}
11 )
12 }
13 </script>
14 </head>
15 <body>
16 <input type='checkbox' />UserA
17 <input type='checkbox' />UserB
18 <input type='checkbox' />UserC
19 <input type="checkbox" id="selectall" onclick="selectall()" />全选
20 </body>
21 </html>

我想实现全选功能,toggle()是切换使用这两个函数,其他checkbox都能被选中,但为何就是自己不能被选中?其他方法我知道也可以实现全选功能,但我就是想用toggle()方法实现,有点拗啊,希望大家支个招啊!

清流鱼的主页 清流鱼 | 初学一级 | 园豆:179
提问于:2010-08-07 21:57
< >
分享
最佳答案
0

或许这是你想要的:

1 <html>
2  <head>
3 <title>JQuery实现全选</title>
4 <script language="javascript" type="text/javascript" src="jquery-1.3.2.min.js"></script>
5 <script type="text/javascript">
6 $(function(){
7 $('#selectall').click(function() {
8 $(':checkbox[id!=selectall]').attr('checked',$(this).attr('checked'));
9 }
10 );
11 });
12 </script>
13 </head>
14 <body>
15 <input type='checkbox' />UserA
16 <input type='checkbox' />UserB
17 <input type='checkbox' />UserC
18 <input type="checkbox" id="selectall" />全选
19 </body>
20 </html>

 

话说,selectall的选中状态既然交给鼠标控制了,就不需要在代码中改变它了,虽然这不是关键~

收获园豆:5
囧月 | 小虾三级 |园豆:1139 | 2010-08-08 18:38
调试过,可行的,这是我见过的代码量最少的实现全选功能的,牛!
清流鱼 | 园豆:179 (初学一级) | 2010-08-08 21:02
其他回答(1)
0

版本问题用??1.4看看

高凡凡高 | 园豆:95 (初学一级) | 2010-08-08 02:22
试过,不行,仍然多谢啊
支持(0) 反对(0) 清流鱼 | 园豆:179 (初学一级) | 2010-08-08 20:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册