一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Asp.Net2.0權限樹中Checkbox的操作

  這里使用ASP.NET2.0的TreeView控件結合JavaScript實現(xiàn)權限樹的部分功能。
  假設權限樹中有如下三條規(guī)則:
  1、該節(jié)點可以訪問,則他的父節(jié)點也必能訪問;
  2、該節(jié)點可以訪問,則他的子節(jié)點也都能訪問;
  3、該節(jié)點不可訪問,則他的子節(jié)點也不能訪問。

代碼如下:
//獲取元素指定tagName的父元素
function public_GetParentByTagName(element, tagName)
{
    var parent = element.parentNode;
    var upperTagName = tagName.toUpperCase();
    //如果這個元素還不是想要的tag就繼續(xù)上溯
    while (parent && (parent.tagName.toUpperCase() != upperTagName))
    {
        parent = parent.parentNode ? parent.parentNode : parent.parentElement;
    }
    return parent;
}

//設置節(jié)點的父節(jié)點Cheched――該節(jié)點可訪問,則他的父節(jié)點也必能訪問
function setParentChecked(objNode)
{
    var objParentDiv = public_GetParentByTagName(objNode,"div");
    if(objParentDiv==null || objParentDiv == "undefined")
    {
        return;
    }
    var objID = objParentDiv.getAttribute("ID");
    objID = objID.substring(0,objID.indexOf("Nodes"));
    objID = objID+"CheckBox";
    var objParentCheckBox = document.getElementById(objID);
    if(objParentCheckBox==null || objParentCheckBox == "undefined")
    {
        return;
    }
    if(objParentCheckBox.tagName!="INPUT" && objParentCheckBox.type == "checkbox")
    return;
    objParentCheckBox.checked = true;
    setParentChecked(objParentCheckBox);
}

//設置節(jié)點的子節(jié)點uncheched――該節(jié)點不可訪問,則他的子節(jié)點也不能訪問
function setChildUnChecked(divID)
{
    var objchild = divID.children;
    var count = objchild.length;
    for(var i=0;i<objchild.length;i++)
    {
        var tempObj = objchild[i];
        if(tempObj.tagName=="INPUT" && tempObj.type == "checkbox")
        {
            tempObj.checked = false;
        }
        setChildUnChecked(tempObj);
    }
}

//設置節(jié)點的子節(jié)點cheched――該節(jié)點可以訪問,則他的子節(jié)點也都能訪問
function setChildChecked(divID)
{
    var objchild = divID.children;
    var count = objchild.length;
    for(var i=0;i<objchild.length;i++)
    {
        var tempObj = objchild[i];
        if(tempObj.tagName=="INPUT" && tempObj.type == "checkbox")
        {
            tempObj.checked = true;
        }
        setChildChecked(tempObj);
    }
}

//觸發(fā)事件
function CheckEvent()
{

    var objNode = event.srcElement;

    if(objNode.tagName!="INPUT" || objNode.type!="checkbox")
    return;

    if(objNode.checked==true)
    {
        setParentChecked(objNode);
        var objID = objNode.getAttribute("ID");
        var objID = objID.substring(0,objID.indexOf("CheckBox"));
        var objParentDiv = document.getElementById(objID+"Nodes");
        if(objParentDiv==null || objParentDiv == "undefined")
        {
            return;
        }
        setChildChecked(objParentDiv);
    }
    else
    {
        var objID = objNode.getAttribute("ID");
        var objID = objID.substring(0,objID.indexOf("CheckBox"));
        var objParentDiv = document.getElementById(objID+"Nodes");
        if(objParentDiv==null || objParentDiv == "undefined")
        {
            return;
        }
        setChildUnChecked(objParentDiv);
    }
}

然后在page_load事件中將TreeView與js事件綁定上:

this.TreeView1.Attributes.Add("onclick", "CheckEvent()");

 

AspNet技術Asp.Net2.0權限樹中Checkbox的操作,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 91在线看片一区国产 | 91大神免费视频 | 韩国一级毛片a级免观看 | 国产美女福利在线 | 福利国产在线 | 欧美三级成人观看 | 久久国产精品免费一区二区三区 | haodiaocao这里只有精品一 | 国产91丝袜香蕉在线播放 | 免费真实播放国产乱子伦 | 国产成人盗摄精品 | 人人洗澡人人洗澡人人 | 最新国产一区二区精品久久 | 久久综合一区二区 | 99视频精品全部在线播放 | 天天做天天爱天天爽天天综合 | 国产自精品 | 欧美一区二区三区性 | 日本高清在线精品一区二区三区 | 国产精品久久亚洲不卡4k岛国 | 91一个人的在线观看www | 一木道一二三区精品 | 欧美性一交激情视频在线 | 天堂成人精品视频在线观 | 玖玖免费| 国产精品成人免费视频 | 牛牛影院成人免费网页 | 欧美亚洲三级 | 精品国产一区二区三区成人 | 久久亚洲精品视频 | 中文字幕一区二区三区四区五区 | 国产第一页精品 | 国产玖玖玖精品视频 | 欧美成人a | 中国特级黄一级真人毛片 | 都市激情综合网 | 亚洲激情第二页 | 亚洲精品亚洲人成在线播放 | 一区二区三区在线播放 | 欧美大片a特激情刺激 | 色吧综合 |