javascript求助·TreeView选中节点,联动文本框显示value
在JS中实现 每次点击TreeView中CheckBox时控制更新一个文本框显示内容为 所有已选节点 的Valve值拼接字符串
关键是我不知道怎么在JS中遍历TreeView取值··· --------------------编程问答-------------------- 大侠们指导一下··· --------------------编程问答--------------------
--------------------编程问答-------------------- 怎么才能取到某一节点的 VALUE呢?
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<script type="text/javascript">
function test()
{
var TreeNode=document.getElementById("TreeView1");
//alert(TreeNode.tagName);//DIV
// for(var obj in tree)
// {
// alert(obj.innerHTML);
// }
//var nodes=TreeNode.childNodes;//访问DIV和访问document一样
//for(i=0;i<nodes.length;i++)
//{
//alert(nodes[i].tagName+" "+nodes[i].nodeName+" "+nodes[i].nodeType);
//alert(nodes[i].firstChild.tagName+" "+nodes[i].lastChild.tagName);
//}
dg(TreeNode);
}
function dg(TreeNode)
{
var nodes=TreeNode.childNodes;
for(var i=0;i<nodes.length;i++)//此处如果不加var则i就成为全局变量导致递归不正确、全面
{
//alert(nodes[i].tagName);
//alert(i);
if(nodes[i].tagName=="DIV")
{
/*return*/ dg(nodes[i]); //不能使用return,否则会导致递归提前结束
nodes[i].style.borderStyle="solid";
nodes[i].style.borderWidth="1px";
nodes[i].style.borderColor="#ff0";
}
else
{
/*return*/ GetNodeAttr(nodes[i]);
}
}
}
function GetNodeAttr(node)
{
for(var i=0; i<node.rows[0].cells.length;i++)
{
node.rows[0].cells[i].style.borderStyle="solid";
node.rows[0].cells[i].style.borderWidth="1px";
node.rows[0].cells[i].style.borderColor="#f0f"
//alert(node.rows[0].cells[i].children[0].tagName);
if(node.rows[0].cells[i].children[0].tagName=="DIV" || node.rows[0].cells[i].children[0].tagName=="IMG") //跳过间隔符或者连接线图片
{
continue;
}
var tagA=node.rows[0].cells[i].children[0];
if(tagA.children.length==0) //大于0的则是折叠按钮
{
//alert(node.rows[0].cells[i].children[0].innerText);
node.rows[0].cells[i].children[0].innerHTML="<b>"+node.rows[0].cells[i].children[0].innerText+"</b>"
}
}
}
function factorial(aNumber)
{
aNumber = Math.floor(aNumber); // 如果这个数不是一个整数,则向下舍入取小于它的最大整数。
if (aNumber < 0) // 如果这个数小于 0,拒绝接收。
{
return aNumber;
}
else if (aNumber == 0) // 如果为 0,则其阶乘为 1。
{ return 1;
}
else
return (aNumber * factorial(aNumber - 1)); // 否则,递归直至完成。
}
//alert(factorial(10));
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="Button1" type="button" value="button" onclick="test();" />
<asp:TreeView ID="TreeView1" runat="server" ShowLines="True">
</asp:TreeView>
</div>
</form>
</body>
</html>
在后台 TreePro.Nodes[i].ChildNodes[o].Value.ToString(); 就可以取到了 ·
JS怎么写·? --------------------编程问答-------------------- 额额额 恩恩······ --------------------编程问答-------------------- 问题尚未解决···· --------------------编程问答-------------------- javascript获取TreeView控件选中节点的Text和Value --------------------编程问答-------------------- 还是处理不了
按pgameli的办法在点击文字部分 也就是<span>时是能取到我要的值了 可点在checkbox上时还是取不到啊···
--------------------编程问答-------------------- 我现在要做的效果是 选中 treeview上的checkbox时获取节点的value···
pgameli那法子不行额·· --------------------编程问答-------------------- 没有结果 继续顶··
补充:.NET技术 , ASP.NET