| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1869 人关注过本帖
标题:当checkbox只有一个时,全选错出了!
只看楼主 加入收藏
_断肠人_
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2008-10-28
收藏
 问题点数:0 回复次数:4 
当checkbox只有一个时,全选错出了!
<script type="text/javascript">
 // 说明:Javascript 控制 CheckBox 的全选与取消全选
 //<!-- Begin
var checkflag = "false";
function check(field) {
if (checkflag == "false") {
for (i = 0; i < field.length; i++) {
field[i].checked = true;}
checkflag = "true";
return "false"; }
else {
for (i = 0; i < field.length; i++) {
field[i].checked = false; }
checkflag = "false";
return "true"; }
}
//  End -->
</script>
<form>
 <input id="chkAll" name="chkAll" type="checkbox" onClick="this.value=check(this.form.chkMember)" />&nbsp; 全选<br/>
 &nbsp;&nbsp;<input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰

</form>
搜索更多相关主题的帖子: checkbox 
2008-11-06 12:08
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
要对checkbox的length属性判断是否为null是的话证明只有一个否则会有2个以上或2个
2008-11-06 17:45
_断肠人_
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2008-10-28
收藏
得分:0 
还有这事!

事在人为
2008-11-15 23:54
linuxpluto
Rank: 4
等 级:贵宾
威 望:13
帖 子:889
专家分:23
注 册:2005-8-14
收藏
得分:0 
错误的原因是当ckMember的length是1的时候就不是个数组了.
是个普通的标签,这个时候不能当数组对待,所以field.length的引用是错误的
要价格判断
我给个代码
程序代码:
<script type="text/javascript"> 
// 说明:Javascript 控制 CheckBox 的全选与取消全选 
//<!-- Begin

function SelectAll(obj)
{
    if (obj.length)
    {
        for(i=0;i<obj.length;i++)
        {
            obj[i].checked=true;
        }
    }else{
        obj.checked=true;
    }
    
}

function UnSelectAll(obj)
{
    if (obj.length)
    {
        for(i=0;i<obj.length;i++)
        {
            obj[i].checked=false;
        }
    }else{
        obj.checked=false;
    }
}

function ReverseAll(obj)
{
    if (obj.length)
    {
        for(i=0;i<obj.length;i++)
        {
            obj[i].checked=!obj[i].checked;
        }
    }else{
        obj.checked=!obj.checked;
    }
}
//  End -->
</script> 
<form>
<input id="chkAll" name="chkAll" type="radio" onclick="SelectAll(this.form.chkMember)" />全选
<input id="chkAll" name="chkAll" type="radio" onclick="UnSelectAll(this.form.chkMember)" />全不选
<input id="chkAll" name="chkAll" type="radio" onclick="ReverseAll(this.form.chkMember)" />反选
<br/>
  <input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰1
  <input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰1
  <input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰1
  <input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰1
  <input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰1
  <input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰1
  <input name="chkMember" type="checkbox" value="38" title="蔡登峰" />蔡登峰1


</form>

吃的比猪还差,干的比驴还累,起的比鸡还早,睡得比小姐还晚,挣得比民工还少,看起来比谁都好——苦命的人.人生短短几十年,不要给自己留下了什么遗憾,想笑就笑,想哭就哭,该爱的时候就去爱,无谓压抑自己
2008-11-17 00:17
_断肠人_
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2008-10-28
收藏
得分:0 
茅塞顿开
3Q

事在人为
2008-11-19 01:48
快速回复:当checkbox只有一个时,全选错出了!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015250 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved