|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
数据库有很多应用领域,但是如果你单单学数据库的话基本上做数据库管理员比较合适而已,跟领域结合的你还得再学习那些领域知识。(其实数据挖掘我真是不懂,本来这学期开了一门课了。asp.net 这里利用asp.net2.0的TreeView控件分离JavaScript完成权限树的部分功效。
假定权限树中有以下三条划定规矩:
1、该节点能够会见,则他的父节点也必能会见;
2、该节点能够会见,则他的子节点也都能会见;
3、该节点不成会见,则他的子节点也不克不及会见。
代码以下:
//猎取元素指定tagName的父元素
functionpublic_GetParentByTagName(element,tagName)
{
varparent=element.parentNode;
varupperTagName=tagName.toUpperCase();
//假如这个元素还不是想要的tag就持续上溯
while(parent&&(parent.tagName.toUpperCase()!=upperTagName))
{
parent=parent.parentNode?parent.parentNode:parent.parentElement;
}
returnparent;
}
//设置节点的父节点Cheched――该节点可会见,则他的父节点也必能会见
functionsetParentChecked(objNode)
{
varobjParentDiv=public_GetParentByTagName(objNode,"div");
if(objParentDiv==null||objParentDiv=="undefined")
{
return;
}
varobjID=objParentDiv.getAttribute("ID");
objID=objID.substring(0,objID.indexOf("Nodes"));
objID=objID+"CheckBox";
varobjParentCheckBox=document.getElementById(objID);
if(objParentCheckBox==null||objParentCheckBox=="undefined")
{
return;
}
if(objParentCheckBox.tagName!="INPUT"&&objParentCheckBox.type=="checkbox")
return;
objParentCheckBox.checked=true;
setParentChecked(objParentCheckBox);
}
//设置节点的子节点uncheched――该节点不成会见,则他的子节点也不克不及会见
functionsetChildUnChecked(divID)
{
varobjchild=divID.children;
varcount=objchild.length;
for(vari=0;i<objchild.length;i++)
{
vartempObj=objchild[i];
if(tempObj.tagName=="INPUT"&&tempObj.type=="checkbox")
{
tempObj.checked=false;
}
setChildUnChecked(tempObj);
}
}
//设置节点的子节点cheched――该节点能够会见,则他的子节点也都能会见
functionsetChildChecked(divID)
{
varobjchild=divID.children;
varcount=objchild.length;
for(vari=0;i<objchild.length;i++)
{
vartempObj=objchild[i];
if(tempObj.tagName=="INPUT"&&tempObj.type=="checkbox")
{
tempObj.checked=true;
}
setChildChecked(tempObj);
}
}
//触发事务
functionCheckEvent()
{
varobjNode=event.srcElement;
if(objNode.tagName!="INPUT"||objNode.type!="checkbox")
return;
if(objNode.checked==true)
{
setParentChecked(objNode);
varobjID=objNode.getAttribute("ID");
varobjID=objID.substring(0,objID.indexOf("CheckBox"));
varobjParentDiv=document.getElementById(objID+"Nodes");
if(objParentDiv==null||objParentDiv=="undefined")
{
return;
}
setChildChecked(objParentDiv);
}
else
{
varobjID=objNode.getAttribute("ID");
varobjID=objID.substring(0,objID.indexOf("CheckBox"));
varobjParentDiv=document.getElementById(objID+"Nodes");
if(objParentDiv==null||objParentDiv=="undefined")
{
return;
}
setChildUnChecked(objParentDiv);
}
}
然后在page_load事务中将TreeView与js事务绑定上:
this.TreeView1.Attributes.Add("onclick","CheckEvent()");
你可以先看看这篇文章(软微学院生涯-三朝元老经验谈),打不开再跟我说。(我的意思是想让她自己先稍微了解一下到底现在各个方向学的工具以及以后要做的工具大概是什么,因为喜欢做什么样的事其实自己最清楚的) |
|