怎么在客户端捕捉treeview结点的click事件呢?

tzg105 2004-01-10 11:02:18
怎么在客户端捕捉treeview结点的click事件呢?
1,treeview.Attributes.Add("onclick","check_tree(this)");
这是整个树的click事件,你点树的其他地方,不点结点也会触发该事件;
2,我的目的是能通过check和click两个事件都能让结点复选框打勾;
node=tree.getTreeNode(treeview.clickedNodeIndex);
是可以捕捉到,但因为上面的问题,单击树的其他地方时,也做了该操作。

还请帮小弟一吧!
...全文
120 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jpyc 2004-03-19
  • 打赏
  • 举报
回复
首先保证装好你的组件,这个包安装非常方便,只要运行一下即可在VS.NET中使用了:
http://218.56.11.178:8018/FileDown.aspx?FID=4

看看这个例子,对你一定有启发:
http://218.56.11.178:8018/FileDown.aspx?FID=246

这个论坛也使用了树:
http://218.56.11.178:8018/FileDown.aspx?FID=212

论坛的使用演示地址,在这里:
http://expert.kaer.cn/

提供站点:http://soft.kaer.cn 希望大家多支持!
ftp://soft.kaer.cn 可以直接用IE匿名访问,目前速度没限制。
tzg105 2004-01-15
  • 打赏
  • 举报
回复
stoway(X.G.Z) :
我要onclick事件时让结点的checkbox选中或取消!! oldnode用不上啊??
wudixiaocaoren 2004-01-15
  • 打赏
  • 举报
回复
1.设置所选节点,如选中第二个节点

function SetSelNode()

{

TreeView1.selectedNodeIndex="1";

}


2.得到所选节点的Text,ID或NodeData

function GetAttribute()

{

alert(TreeView1.getTreeNode(TreeView1.selectedNodeIndex).getAttribute("Text"));

}

替换Text为ID或NodeData,可分别得到所选节点的ID或NodeData


3.修改节点属性,如修改第一个节点的Text

function ModifyNode()

{

var node=TreeView1.getTreeNode("0");

node.setAttribute("Text","hgknight");

}


4.得到点击节点

function TreeView1.onclick()

{

alert(TreeView1.getTreeNode(TreeView1.clickedNodeIndex).getAttribute("Text"));

}


5.添加节点

function AddNode()

{

var node=TreeView1.createTreeNode();

node.setAttribute("Text","hgknight");

TreeView1.add(node);

}

6.js遍历所有节点

//只针对根结点,大家把它可改为递归形式

var NodeArray=new Array();

NodeArray=TreeView1.getChildren();

for(i=0;i<NodeArray.length;i++)

{

cNode=NodeArray[i];

alert(cNode.getAttribute("Text"));

}

stoway 2004-01-15
  • 打赏
  • 举报
回复
var oldNode;
function TreeView1.onclick()
{
if(oldNode!=TreeView1.getTreeNode(TreeView1.clickedNodeIndex).getAttribute("Text"))
{
alert(TreeView1.getTreeNode(TreeView1.clickedNodeIndex).getAttribute("Text"));
oldNode=TreeView1.getTreeNode(TreeView1.clickedNodeIndex).getAttribute("Text");
}
}
tzg105 2004-01-15
  • 打赏
  • 举报
回复
stoway(X.G.Z):
你不点结点,而去点树的空白的地方,它也会触发onclick事件啊!
stoway 2004-01-15
  • 打赏
  • 举报
回复
得到点击节点
function TreeView1.onclick()
{
alert(TreeView1.getTreeNode(TreeView1.clickedNodeIndex).getAttribute("Text"));
}
tzg105 2004-01-13
  • 打赏
  • 举报
回复
再次请江雨大哥来帮俺!
tzg105 2004-01-13
  • 打赏
  • 举报
回复
luochen(罗晨) ( ):
无法判断,只要click过一次结点,那么TreeView1.clickedNodeIndex永远都会有值,node也不会为null。
tzg105 2004-01-13
  • 打赏
  • 举报
回复
linyanlinyanlinyan(linlin) 你的方法是可以,但在弹出模态窗口时就不行了,它会在新的页面打开。 <base target=_self>也不行!
luochen 2004-01-11
  • 打赏
  • 举报
回复
treeview.Attributes.Add("onclick","check_tree(this)");
只要你判断一下是不是点在接点上?????
node=TreeView1.getTreeNode(TreeView1.clickedNodeIndex);
if(node!=null)
{
你的代码;
}
popu2 2004-01-11
  • 打赏
  • 举报
回复
你用ildasm把webcontrol反编看看,你可以知道更多啦
linyanlinyanlinyan 2004-01-10
  • 打赏
  • 举报
回复
后台写:root.NavigateUrl = "javascript:showContents('" + childid + "','"+nodename+"')";
前台写:<script language="javascript">
function showContents(deptid,deptname)
{
frmdept.location.href = "deptManage.aspx?deptid=" + deptid+"&deptname="+deptname;
}
</script>
请参考

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧