js控制页面,checkbox等
2008-04-23 14:47 Kevin Zhou 阅读(204) 评论(0) 编辑 收藏 举报 <script type = "text/javascript" >
var num = new Array();
InitCheckbox(frm);
function InitCheckbox(frm)
{
var chb = document.getElementsByName("checkrightsall");
for(var i=0;i<=chb.length;i++)
{
for(var k=i;k<chb.length;k++)
{
num[k] = chb[i].value.toString();
}
//num[i] = chb[i].value.toString();
//var cb= chb[i];
//num[i] = chb[i].value.toString().substring(0,3);
}
for(var j=0;j<num.length;j++)
{
InitParentCheckbox(num[j]);
//alert(num[j]);
}
}
function InitParentCheckbox(whchb)
{
var ch_child = document.getElementsByName("checkrights");
var ch_zoneparent = document.getElementById("ch"+whchb);
var mtotle =0; //区域checkbox总数
var mchecked =0; //区域checkbox选中数
for(var m=0;m<ch_child.length;m++)
{
if(ch_child[m].value.toString().substring(0,3) == whchb.toString())
{
mtotle++;
if(ch_child[m].checked)
{
mchecked++;
}
}
}
//if(ch_child[m].checked == false)
if(mchecked < mtotle && mchecked !=0)
{
//alert(mchecked);
ch_zoneparent.checked = false;
InitDivStyle(whchb,false);
}
//else if(ch_child[m].checked == true)
else if(mchecked == mtotle)
{
ch_zoneparent.checked = true;
InitDivStyle(whchb,true);
}
//else
else if(mchecked == 0)
{
ch_zoneparent.checked = false;
InitDivStyle(whchb,true);
}
}
function InitDivStyle(divnum,divstyle)
{
var div_zone=eval("div_"+divnum);
var span_zone = eval("span"+divnum);
if(divstyle == true)
{
div_zone.style.display = "none";
span_zone.style.backgroundImage= "url(../image/plus.png)";
}
else if(divstyle == false)
{
div_zone.style.display = "";
span_zone.style.backgroundImage= "url(../image/minus.png)";
}
//alert(divnum);
}
</script>