WEB 开发 开发语言 Java 技术 .Net 技术 数 据 库 硬件使用
图象媒体 Linux/Unix 移动平台 嵌入开发 Windows 专区 软件工程
Ajax 技术 | ASP | PHP | ASP.NET | C# | JSP | Access | Oracle | 网页设计 | Flash | 安全专题 | IIS | VC/MFC | Delphi | C/C++
 你的位置:首页 > WEB 开发 > JavaScript

js表单中checkbox全选
[ 来源:ITWENKU 时间:2007-4-7 20:45:53 | 浏览:320人次 ]

是初学者
想要做一个js功能像邮箱中收件箱的复选框选全选,
在选种第一个checkbox(name="allcheckbox")是会把下面的全部也选中,但下面的有一个被取消时(不选中),第一个checkbox(name="allcheckbox")的打钩也会去掉
还有就是 checkbox中的name的值 要求要不一样

急~~谢谢帮忙~~~~
<script language="JavaScript"> ????? </script>

<form name='f1' id='f1'>
<input name="allcheckbox" type="checkbox" title='全选/取消' onclick="cball()">全选<br/>
<input name="m1" type="checkbox" onclick=''><br/>
<input name="m2" type="checkbox" onclick=''><br/>
<input name="m3" type="checkbox" onclick=''><br/>
<input name="m4" type="checkbox" onclick=''><br/>
<input name="m5" type="checkbox" onclick=''><br/>
<input name="m6" type="checkbox" onclick=''><br/>
</form>



<script language="JavaScript">
function cball(obj)
{
for(i = 0;i<document.getElementsByTagName("INPUT").length;i++)
{
if(document.getElementsByTagName("INPUT")[i].name.substr(0,1)=="m")
{
document.getElementsByTagName("INPUT")[i].checked=obj.checked
}
}
}
</script>

<input name="allcheckbox" type="checkbox" title='全选/取消' onclick="cball(this)">全选<br/>


一般情况下,这样写
<script language="JavaScript">
function cball(obj)
{
for(i = 0;i<document.getElementsByName("m").length;i++)
{
document.getElementsByName("m")[i].checked=obj.checked
}
}
</script>


<form name='f1' id='f1'>
<input name="allcheckbox" type="checkbox" title='全选/取消' onclick="cball(this)">全选<br/>
<input name="m" type="checkbox" onclick=''><br/>
<input name="m" type="checkbox" onclick=''><br/>
<input name="m" type="checkbox" onclick=''><br/>
<input name="m" type="checkbox" onclick=''><br/>
<input name="m" type="checkbox" onclick=''><br/>
<input name="m" type="checkbox" onclick=''><br/>
</form>


function cball(){
var oform=document.getElementById("f1");
var oc=oform.childNodes;
for (i=0;i<oc.length;i++){
if ((oc(i).type)=="checkbox")
oc(i).checked=true;
}
}
function cnall(obj){
var oc=document.getElementById("all");

if (obj.checked==false)
oc.checked=false;

}
</script>

<form name='f1' id='f1'>
<input id="all" name="allcheckbox" type="checkbox" title='全选/取消'

onclick="cball()">全选<br/>
<input name="m1" type="checkbox" onclick='cnall(this)'><br/>
<input name="m2" type="checkbox" onclick='cnall(this)'><br/>
<input name="m3" type="checkbox" onclick='cnall(this)'><br/>
<input name="m4" type="checkbox" onclick='cnall(this)'><br/>
<input name="m5" type="checkbox" onclick='cnall(this)'><br/>
<input name="m6" type="checkbox" onclick='cnall(this)'><br/>
</form>



好不容易有一个会做的,又被孟老大抢了先,唉


<script language="javascript">
function cball(){
alert(document.getElementById("all").checked)
var oform=document.getElementById("f1");
var oc=oform.childNodes;
for (i=0;i<oc.length;i++){
if ((oc(i).type)=="checkbox")
oc(i).checked=(document.getElementById("all").checked?true:false);
}
}
function cnall(obj){
var oc=document.getElementById("all");

if (obj.checked==false)
oc.checked=false;

}
</script>

<form name='f1' id='f1'>
<input id="all" name="allcheckbox" type="checkbox" title='全选/取消' onclick="cball()">全选<br/>
<input name="m1" type="checkbox" onclick='cnall(this)'><br/>
<input name="m2" type="checkbox" onclick='cnall(this)'><br/>
<input name="m3" type="checkbox" onclick='cnall(this)'><br/>
<input name="m4" type="checkbox" onclick='cnall(this)'><br/>
<input name="m5" type="checkbox" onclick='cnall(this)'><br/>
<input name="m6" type="checkbox" onclick='cnall(this)'><br/>
</form>




还有一个当下面的手动的全选种时第一个name='allcheckbox'也要自动打勾


<body>
<script language="javascript">
function cball(){
//alert(document.getElementById("all").checked)
var oform=document.getElementById("f1");
var oc=oform.childNodes;
for (i=0;i<oc.length;i++){
if ((oc(i).type)=="checkbox")
oc(i).checked=(document.getElementById("all").checked?true:false);
}
}
function cnall(obj){
var ock=document.getElementById("all");
var noChek=0;
if (obj.checked==false)
ock.checked=false;
var oform=document.getElementById("f1");
var oc=oform.childNodes;
//alert(obj.checked);
for (i=0;i<oc.length;i++){
if ((oc(i).type)=="checkbox"){
if (oc(i).checked==true)
noChek+=1;
}
}
//alert(noChek);
if (noChek==6)
ock.checked=true;

}
</script>
</script>

<form name='f1' id='f1'>
<input id="all" name="allcheckbox" type="checkbox" title='全选/取消' onclick="cball()">全选<br/>
<input name="m1" type="checkbox" onclick='cnall(this)'><br/>
<input name="m2" type="checkbox" onclick='cnall(this)'><br/>
<input name="m3" type="checkbox" onclick='cnall(this)'><br/>
<input name="m4" type="checkbox" onclick='cnall(this)'><br/>
<input name="m5" type="checkbox" onclick='cnall(this)'><br/>
<input name="m6" type="checkbox" onclick='cnall(this)'><br/>
</form>
</body>




我靠 两个红闪闪的东西 真漂亮 分一个来

 相关文章
·如何验证变量名称文本内容?
·实现用鼠标动态调整窗口桢宽度
·请教一个Microsoft。XMLHTTP 返回的值的执行问题
·关于页面字符串替换的问题
·图形界面生成SQL语句
·如何在框架页面里获得子框架的鼠标移动事件

 推荐文章
点击某格单元格时,如何获取此单元格所在的行数?
请问javascript的鼠标进过的问题
关于在代理的情况下引入HTC组件的问题
问一下,梅花雪JS的日期控件怎么改能改成mm-dd-yyyy的形式?或者是有什么JS控件可以实现这个功能?
有个小问题
关于JS的窗体关闭事件
javascript动态调用function的问题
如果获得textarea控件中的内容?
如何在一个页面中的两个iframe中互相传值?
请教JS开发的老手
在动态增加隐藏域时,它的NAME熟悉能不能动态改变?
window。open的问题
 版权所有:IT问库
copyright © 2006 www.itwenku.cn all rights reserved.