简单人生
幻想指点江山,梦中激扬文字
首页
新随笔
联系
聚合
管理
posts - 162, comments - 553, trackbacks - 0
JS全选checkBox最佳方案。原创哦
<
input
type
="button"
name
=""
value
="不计算长度"
onclick
="a()"
>
<
input
type
="button"
name
=""
value
="全选"
onclick
="b()"
>
<
input
type
="button"
value
="缓存"
onclick
="c()"
>
<
input
type
="checkbox"
name
="test[]"
value
="0"
>
测试测试
<
br
>
<
script
language
="JavaScript"
>
<!--
var
ca
=
new
Array();
function
a()
{
var
m
=
document.getElementsByName('test[]');
for
(
var
i
=
0
; i
<
m.length ; i
++
)
{
m[i].checked
==
true
?
m[i].checked
=
false
: m[i].checked
=
true
;
}
}
function
b()
{
var
m
=
document.getElementsByName('test[]');
var
l
=
m.length;
for
(
var
i
=
0
; i
<
l; i
++
)
{
m[i].checked
==
true
?
m[i].checked
=
false
: m[i].checked
=
true
;
}
}
function
c()
{
if
(ca.length
==
0
)
{
ca
=
cache();
}
cl
=
ca.length;
for
(
var
i
=
0
; i
<
cl; i
++
)
{
ca[i].checked
==
true
?
ca[i].checked
=
false
: ca[i].checked
=
true
;
}
}
function
cache()
{
var
m
=
document.getElementsByName('test[]');
var
cache
=
new
Array();
var
l
=
m.length;
for
(
var
i
=
0
; i
<
l; i
++
)
{
cache[i]
=
m[i];
}
return
cache;
}
//
-->
</
script
>
黑黑,至于那个input type="checkbox"的,你们就尽量复制吧,尽量不要超过1W,否则。。别怪我没有提醒你,当然了,也不需要把浏览器关掉,跑到外面抽根烟再回来就行了。
所以,我们要切实的记住,反正数组有长度的,坚决不能放在循环里面,而是先将这个长度取出来当成变量。PHP里也一样,循环数组的时候,先count数组的长度比较好。
当然了,我第三个采用了缓存,速度也是非常快的,比长度取好后再进行计算更快,因为连一次都不用取了(当然,除了第一次),全部扔给客户端了。
上面的例子还是比较方便的,因为,checkbox的 name值都一样,如果不一样怎么办???
只能这样
<
script
language
="JavaScript"
>
<!--
function
check()
{
var
inputs
=
document.getElementsByTagName('input');
var
inputsLen
=
inputs.length;
for
(
var
i
=
0
; i
<
inputsLen ; i
++
)
{
if
(inputs[i].type.toLowerCase()
==
'checkbox')
{
inputs[i].checked
==
true
?
inputs[i].checked
=
false
: inputs[i].checked
=
true
;
}
}
}
//
-->
</
script
>
缓存方法同上,这里就不多讨论了
请求加精……唉。没地方加精。
posted on 2007-10-17 17:44
简单人生
阅读(5075)
评论(11)
编辑
收藏
引用
所属分类:
Loving PHP
FeedBack:
#
re: JS全选checkBox最佳方案。原创哦
2007-10-17 17:56 |
991
顶!呵呵。
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2007-10-17 19:20 |
991
var l = m.length; //牛X语句
以前没有刻意去验证这两种写法有多大差距。
$num = getCount();
for($i=0;$i<$num;$i++){} 与
for($i=0;$i<getCount();$i++){}的区别
在这个例子很好体现。
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2007-10-17 19:25 |
991
一不小心多复制了6w多,
b()也就2秒多,
c()一秒多。
呵呵。
加精~!
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2007-10-17 19:43 |
简单人生
如果名字不一样呢?如果NAME名字不一样,你只能用TagName的时候,你就会知道这个差距是多大了……
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2007-10-17 21:38 |
简单人生
又有朋友和我讲……完全可以
m[i].checked = !m[i].checked;
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2007-10-23 10:27 |
十三郎
不知道怎么说,连最基本的功能实现都不是太好。
假如你选择一个,再点击全选,全选了吗?
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2007-10-29 13:11 |
简单人生
@十三郎
那就是复选了。因为我没有判断它是否现在选中,我这个只是为了说明一下,如果同时选中这么多checkbox框的耗时情况。然后说明一下,写代码稍有一点规范性。本身我的代码中就是偷懒写法。。黑黑
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2007-12-17 07:03 |
高原
真是学到东西了.不错,以后写程序要注意这方面的问题.
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦[未登录]
2009-04-09 11:56 |
小可
学习了
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦[未登录]
2009-09-02 15:35 |
过客
感谢感谢,真是受益
回复
更多评论
#
re: JS全选checkBox最佳方案。原创哦
2009-09-23 17:43 |
xxx
我又要说LZ 了, 给你说个比较好的 array[i].checked=obj.checked;
回复
更多评论
刷新评论列表
IT新闻:
·
开源硬件能否像开源软件一样流行
·
陈晓薇以主持人身份亮相电视栏目《波士堂》
·
开发员在GDC大会出狂言 苹果下架其应用
·
诺基亚今年或推出配置1GHz CPU的智能手机
·
Chrome的书签管理器即将升级
每天10分钟,轻松学英语
专题:
iPad
jQuery
Chrome OS
博客园首页
IT新闻
程序员微博
招聘频道
学英语
标题
姓名
主页
验证码
*
内容(提交失败后,可以通过“恢复上次提交”恢复刚刚提交的内容)
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
Windows 7专题
博客园首页随笔:
·
玩蛇记之用python实现易宝快速支付接口
·
国内最新最全面IP数据库
·
揭开.NET 2.0配置之谜(三)
·
关于选择方向
·
JSON in .NET
招聘信息:
·
中级程序员(乐辰科技)
·
PHP+Mysql网站开发人员 2名(私企)
·
C#高软(拓明科技)
·
C++开发工程师(sina)
·
C++高级程序员(迅游科技)
博客园
IT新闻
个人主页
BlogJava
博客生活
IT博客网
C++博客
PHP博客
博客园社区
相关链接:
相关文章:
生成静态页面的函数,php爱好者站推荐
[摘]PHP5.1时区设置
JS全选checkBox最佳方案。原创哦
关于PHP正则的取反和逻辑思想的问题
FOR IIS6 的 fastCGI也推出了
为文件名添加诸如_thumb这样的标记
apache rewrite 详解
DBF与MYSQL互转(转自村子http://www.phpx.com/happy/archiver/tid-63834.html)
SQL语句导入导出大全(转)
数据库设计时由于字符集的关系而应当注意的几个小点
<
2009年4月
>
日
一
二
三
四
五
六
29
30
31
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
1
2
3
4
5
6
7
8
9
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(16)
给我留言
查看公开留言
查看私人留言
随笔分类
(73)
LINUX(1)
Loving PHP(42)
N-GAGE QD(4)
烂点子(4)
生活(10)
程序人生(4)
软件消息(8)
文章分类
(2)
Learn Php(2)
相册
Beyond
life
玩图
友逹們
NS团队
关注PHP,关于程序,团队工作,WEB开发,2.0技术研究
st.MadMaN的勃客
BT的域名,BT的勃客
幻影飞狐的BLOG
狐狸的BLOG
来须苍真
小来的日记本
百思家家居网站
百思家家居网站
简单中国
简单中国,人生简单,PHP研发,ajax技术研究,WEB2.0探讨
自恋的奥特慢
关键字:PP、奥特慢、小帅歌、胖胖、自恋、凹凸曼
搜索
最新评论
1. re: JS读取本地文本文件[作个记号]黑黑
好象,从IE7开始,就没有权限了。。。
IE7.8对这种本地文件读取加大了权限 。
--膘叔
2. re: JS读取本地文本文件[作个记号]黑黑
为什么放在jsp页面使用时报没有权限
--陈哥
3. re: JS读取本地文本文件[作个记号]黑黑
为什么报没有权限
--陈哥
4. re: JS全选checkBox最佳方案。原创哦
我又要说LZ 了, 给你说个比较好的 array[i].checked=obj.checked;
--xxx
5. re: JS全选checkBox最佳方案。原创哦[未登录]
感谢感谢,真是受益
--过客
评论排行榜
1. 《精通PHP+MYSQL应用开发》纠错(26)
2. CNNIC和3721不得不说的故事(22)
3. 推荐一个PHP IDE :PHPEDIT(15)
4. 今天,TM怎么了?(14)
5. 丢人的帮忙[网卡灯不亮](12)