日期:2014-05-18  浏览次数:20669 次

急求一个关于checkbox的javascript
共有8个checkbox按钮,分别为
all     spr
vn       ra
svn     noAg
pr       ag
当选择all时,所有均选中。
当选择noAg时,spr,vn,ra,svn,,pr均选中。
当spr,vn,ra,svn,,pr均选中时,noAg同时被选中。
当spr,vn,ra,svn,,pr,ag均选中时,all同时被选中。

------解决方案--------------------
<script language= "javascript " type= " ">
function selectAll()
{
var arrObj = document.all;
for(var i = 0; i < arrObj.length;i++)
{
if(typeof arrObj[i].type != "undefined " && arrObj[i].type== 'checkbox ') arrObj[i].checked =true;
}
}
function unSelectAll()
{
var arrObj = document.all;
for(var i = 0; i < arrObj.length;i++)
{
if(typeof arrObj[i].type != "undefined " && arrObj[i].type== 'checkbox ') arrObj[i].checked =false;
}
}
</script>

这是段全选与全部取消的代码
通过改变里面的IF语句可以实现你的要求
自己研究吧
------解决方案--------------------
JF
------解决方案--------------------
function chainCheck(_main,_hypotaxis){
var main = $(_main);
var hypotaxis = new Array();
for(var i = 0;i < _hypotaxis.length;i++){
hypotaxis.push($(_hypotaxis[i]));
}
main.onclick = function(){
if(main.checked == true){
for(var i = 0;i <hypotaxis.length;i++){
hypotaxis[i].checked = true;
}
}else{
for(var i = 0;i <hypotaxis.length;i++){
hypotaxis[i].checked = false;
}
}
}
for(var i = 0;i <hypotaxis.length;i++){
hypotaxis[i].onclick = function(){
if(isAllHypotaxisChecked(hypotaxis)){
main.checked = true;
}else{
main.checked = false;
}
}
}
}
覆盖掉原来的。。 原来的少了加*那几句。。。
hypotaxis[i].onclick = function(){
if(isAllHypotaxisChecked(hypotaxis)){
main.checked = true;
}else{ //*********
main.checked = false; //*************
} //*************
}