我的树是这样的选是用.net服务器端初始化,也就是在服务器端生成.同时根据传入值,来选中相应的项,比如要进行权限操作.例如选中或取消某一项,返回时我是用js来获取刚才选中的那些项
现在的问题是这样的:
1>在服务器端初始时,且把相应的项进行选中后在客户端把它取消了,也就是把树项前面的钩去掉,表面钩是去掉了,但在用js获取选中项时,这个项依然是被选中状态
我的代码:
获取选中项函数:
function getValue(node)
{
var ChildNode = new Array();
ChildNode= node.getChildren();
if (parseInt(ChildNode.length)!=0)
{
for (var i = 0; i < ChildNode.length; i++)
{
var cNode = ChildNode[i];
if (cNode.getAttribute("checked") == true)
{
ched_va += cNode.getAttribute("ID")+",";
ched_te += cNode.getAttribute("Text")+",";
}
if (parseInt(cNode.getChildren().length) != 0)
getValue(cNode);
}
}
else
{
if (node==null) return;
if (node.getAttribute("checked") == true)
{
ched_va += cNode.getAttribute("ID")+",";
ched_te += cNode.getAttribute("Text")+",";
}
}
}
------------------------
执行函数:
function gb()
{
var kj=" <%=TreeView1.ClientID.ToString()%>";
var ChildNode=new Array(); ChildNode=document.getElementById(kj).getChildren();
ched_va="";
ched_te="";
for (var i=0;i <ChildNode.length;i++)
{
getValue(ChildNode[i]);
}
if (ched_va!="")
{
ched_va=ched_va.substring(0,ched_va.length-1);
ched_te=ched_te.substring(0,ched_te.length-1);
}
alert(ched_te+" ¦ ¦"+ched_va) window.returnValue=ched_va+"^"+ched_te;
window.close();
}
----------------------------------
2>当树为第一项也就是根节点时发现就算选中它,在js里还是获取不到它,这是什么原因
谢谢各位老大帮帮忙,郁闷了好长时间
现在的问题是这样的:
1>在服务器端初始时,且把相应的项进行选中后在客户端把它取消了,也就是把树项前面的钩去掉,表面钩是去掉了,但在用js获取选中项时,这个项依然是被选中状态
我的代码:
获取选中项函数:
function getValue(node)
{
var ChildNode = new Array();
ChildNode= node.getChildren();
if (parseInt(ChildNode.length)!=0)
{
for (var i = 0; i < ChildNode.length; i++)
{
var cNode = ChildNode[i];
if (cNode.getAttribute("checked") == true)
{
ched_va += cNode.getAttribute("ID")+",";
ched_te += cNode.getAttribute("Text")+",";
}
if (parseInt(cNode.getChildren().length) != 0)
getValue(cNode);
}
}
else
{
if (node==null) return;
if (node.getAttribute("checked") == true)
{
ched_va += cNode.getAttribute("ID")+",";
ched_te += cNode.getAttribute("Text")+",";
}
}
}
------------------------
执行函数:
function gb()
{
var kj=" <%=TreeView1.ClientID.ToString()%>";
var ChildNode=new Array(); ChildNode=document.getElementById(kj).getChildren();
ched_va="";
ched_te="";
for (var i=0;i <ChildNode.length;i++)
{
getValue(ChildNode[i]);
}
if (ched_va!="")
{
ched_va=ched_va.substring(0,ched_va.length-1);
ched_te=ched_te.substring(0,ched_te.length-1);
}
alert(ched_te+" ¦ ¦"+ched_va) window.returnValue=ched_va+"^"+ched_te;
window.close();
}
----------------------------------
2>当树为第一项也就是根节点时发现就算选中它,在js里还是获取不到它,这是什么原因
谢谢各位老大帮帮忙,郁闷了好长时间
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货