主页 > 知识库 > js获取Treeview选中的节点(C#选中CheckBox项)

js获取Treeview选中的节点(C#选中CheckBox项)

热门标签:团购网站 阿里云 科大讯飞语音识别系统 Mysql连接数设置 银行业务 Linux服务器 电子围栏 服务器配置
方法网上有很多,试了一下都有瑕疵。最后找了个看上去代码比较少,比较顺眼的,测试结果报错说有几个函数不存在,于是设置断点调试,各个属性查找有用的字段,终于找到。
现整理如下
首先,要想在javascript中获取treeview中带checkbox的节点,需要设置treeview节点的某些属性,我是在后台代码中添加的。
复制代码 代码如下:

TreeNode newNode = new TreeNode();
newNode.Text = “showText”;
newNode.Value =id;
newNode.NavigateUrl = id; // 可用来在javascript中获取需要的value或text值
newNode.ShowCheckBox = true; //显示checkbox
newNode.Expanded = false; //节点折叠
newNode.Checked = true; //checkbox选中

获取Treeview带Input控件的节点:var tree = document.getElementById("treenameOrid").getElementsByTagName("input");
上边设置的是checkbox,所以tree选出的就是带checkbox的项。它不同于var treeitem=document.getElementById("treenameorid");不可遍历直接获取text和value;
获取Treeview中Checkbox选中的节点,通常作为一个判断条件: if (tree[i].type == "checkbox" tree[i].checked) {内容}
获取各个节点需要的值:var s = tree[i].nextSibling.pathname; 发现这个费了我不少脑细胞。要用此属性获取值,必须设置属性newNode.NavigateUrl = 需要的值;
好啦,现在给出一个javascript的完整代码
复制代码 代码如下:

var idlist;
function GeSelectedNode() {
var getAllNodes = "";
idlist = new Array(); //实例化数组
var tree = document.getElementById("treenameOrid").getElementsByTagName("input");
for (var i = 0; i tree.length; i++) {
if (tree[i].type == "checkbox" tree[i].checked) {
var s = tree[i].nextSibling.pathname; //要用此属性获取值,必须设置属性newNode.NavigateUrl = 需要的值;
getAllNodes += s + '/';
idlist.push(s); //将值添加入数组最后一项;
}
}
alert(tree.length);
alert(getAllNodes);
}

现在,运行起来,看看是不是你需要的结果,如果不对,别忘了设断点调试哦。
您可能感兴趣的文章:
  • C# TreeView无限目录树实现方法
  • C#自定义DataGridViewColumn显示TreeView
  • C#实现TreeView节点拖拽的方法
  • C#搜索TreeView子节点,保留父节点的方法
  • C#中TreeView实现适合两级节点的选中节点方法
  • C#中TreeView节点的自定义绘制方法
  • C#实现treeview绑定的方法
  • c#的treeview绑定和获取值的方法
  • 操作xml,将xml数据显示到treeview的C#代码
  • c# TreeView添加右键快键菜单有两种方法
  • c#用Treeview实现FolderBrowerDialog 和动态获取系统图标(运用了Win32 dll类库)
  • c# WPF中的TreeView使用详解

标签:萍乡 广元 大理 蚌埠 衢州 江苏 衡水 枣庄

巨人网络通讯声明:本文标题《js获取Treeview选中的节点(C#选中CheckBox项)》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266