日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 技術(shù)開發(fā)教程 > 詳細頁面

2個客戶端設(shè)置TreeView節(jié)點CheckBox的小例子

2個客戶端設(shè)置TreeView節(jié)點CheckBox的小例子

更新時間:2022-05-03 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

最近在論壇上回答了一些關(guān)于客戶端操作TreeView節(jié)點選中的問題,在網(wǎng)友提供的代碼基礎(chǔ)上做了兩個例子。可惜原貼已經(jīng)丟失了,整理一下寫成文檔吧
為了書寫方便,這兩個例子沒有采用codebehind方式,復制即可運行

第一個例子是當取消或選中節(jié)點選中狀態(tài)時,子節(jié)點也做相應的取消或選中變化
需要注意的是如果要初始設(shè)置TreeNode為選中狀態(tài),只能在客戶端設(shè)置。如果在服務器端設(shè)置TreeNode為選中狀態(tài),則在客戶端使用getAttribute("Checked"),得到的值永遠是true。

<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls, Version=1.0.2.226, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<HTML>
<HEAD>
<script language="C#" runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
TreeView1.Attributes.Add("oncheck","tree_oncheck(this)");
}
</script>
<script language="javascript">
<!--
//初始化選中節(jié)點
function initchecknode()
{
var node=TreeView1.getTreeNode("1");
node.setAttribute("Checked","true");
setcheck(node,"true");
FindCheckedFromNode(TreeView1);
}
//oncheck事件
function tree_oncheck(tree)
{
var node=tree.getTreeNode(tree.clickedNodeIndex);
var Pchecked=tree.getTreeNode(tree.clickedNodeIndex).getAttribute("checked");
setcheck(node,Pchecked);
document.all.checked.value="";
document.all.unchecked.value="";
FindCheckedFromNode(TreeView1);
}
//設(shè)置子節(jié)點選中
function setcheck(node,Pc)
{
var i;
var ChildNode=new Array();
ChildNode=node.getChildren();

if(parseInt(ChildNode.length)==0)
return;
else
{
for(i=0;i<ChildNode.length;i++)
{
var cNode;
cNode=ChildNode[i];
if(parseInt(cNode.getChildren().length)!=0)
setcheck(cNode,Pc);
cNode.setAttribute("Checked",Pc);
}
}
}
//獲取所有節(jié)點狀態(tài)
function FindCheckedFromNode(node) {
var i = 0;
var nodes = new Array();
nodes = node.getChildren();

for (i = 0; i < nodes.length; i++) {
var cNode;
cNode=nodes[i];
if (cNode.getAttribute("Checked"))
AddChecked(cNode);
else
AddUnChecked(cNode);

if (parseInt(cNode.getChildren().length) != 0 ) {
FindCheckedFromNode(cNode);
}
}
}
//添加選中節(jié)點
function AddChecked(node) {
document.all.checked.value += node.getAttribute("NodeData");
document.all.checked.value += ',';
}
//添加未選中節(jié)點
function AddUnChecked(node) {
document.all.unchecked.value += node.getAttribute("NodeData");
document.all.unchecked.value += ',';
}
//-->
</script>
</HEAD>
<body onload="initchecknode()">
<iewc:TreeView id="TreeView1" runat="server" ExpandLevel="5">
<iewc:TreeNode NodeData="0" CheckBox="True" Text="Node0" Expanded="True">
<iewc:TreeNode NodeData="1" CheckBox="True" Text="Node1" Expanded="True"></iewc:TreeNode>
<iewc:TreeNode NodeData="2" CheckBox="True" Text="Node2" Expanded="True">
<iewc:TreeNode NodeData="3" CheckBox="True" Text="Node3" Expanded="True">
<iewc:TreeNode NodeData="4" CheckBox="True" Text="Node4"

Expanded="True"></iewc:TreeNode>
</iewc:TreeNode>
</iewc:TreeNode>
</iewc:TreeNode>
<iewc:TreeNode NodeData="5" CheckBox="True" Text="Node5" Expanded="True">
<iewc:TreeNode NodeData="6" CheckBox="True" Text="Node6" Expanded="True"></iewc:TreeNode>
</iewc:TreeNode>
<iewc:TreeNode NodeData="7" CheckBox="True" Text="Node7" Expanded="True">
<iewc:TreeNode NodeData="8" CheckBox="True" Text="Node8" Expanded="True">
<iewc:TreeNode NodeData="9" CheckBox="True" Text="Node9"

Expanded="True"></iewc:TreeNode>
</iewc:TreeNode>
</iewc:TreeNode>
</iewc:TreeView><P>
<TABLE id="Table1" cellSpacing="1" cellPadding="1" width="300" border="1">
<TR>
<TD>
<asp:Label id="Label1" runat="server">checked</asp:Label></TD>
<TD>
<INPUT id="checked" type="text" size="32"></TD>
</TR>
<TR>
<TD>
<asp:Label id="Label2" runat="server">unchecked</asp:Label></TD>
<TD><INPUT id="unchecked" type="text" size="32"></TD>
</TR>
</TABLE>
<br>
</P>
</body>
</HTML>



第二個例子是關(guān)于如何在服務器端得到客戶端設(shè)置后的節(jié)點選中狀態(tài)

<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls,

Version=1.0.2.226, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<HTML>
<HEAD>
<script language="C#" runat="server">
private void Button1_Click(object sender, System.EventArgs e)
{
Response.Write(TreeView1.Nodes[0].Checked);
}
</script>
<script language="javascript">
function set_check()
{
var nodeindex = "0";
var node=TreeView1.getTreeNode(nodeindex);
node.setAttribute("Checked","True");
TreeView1.queueEvent('oncheck', nodeindex);
}
</script>
</HEAD>
<body>
<form id="TestTree" method="post" runat="server">
<iewc:TreeView id="TreeView1" runat="server">
<iewc:TreeNode CheckBox="True" Text="Node0"></iewc:TreeNode>
</iewc:TreeView>
<br>
<input type="button" value="set check" onclick="set_check()">
<br>
<asp:Button id="Button1" runat="server" Text="submit" OnClick="Button1_Click"></asp:Button>
</form>
</body>
</HTML>

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

主站蜘蛛池模板: 日本大片免费观看 | 久久久久久国产精品免费免费 | 97影院午夜在线观看视频 | 97久久人人做人人爽人人澡 | 日韩黄色在线播放 | 国产精品免费综合一区视频 | 亚洲一区二区三区免费在线观看 | 成人免费视频69 | 91亚洲精品一区二区在线观看 | 午夜影院91 | 天天插夜夜 | 国产在线综合一区二区三区 | 人人爽人人爽人人片c | 日本边添边爱边做视频 | 久色免费视频 | 摸逼综合网 | 免费精品在线视频 | 精品欧美一区手机在线观看 | 夜色综合| 日日摸天天碰免费大爽 | 亚洲五月六月丁香激情 | 九九色影院 | 日本高清有码视频 | 91久久偷偷做嫩草影院 | 伊人色综合久久天天网蜜月 | 久草最新网址 | 国产精品啪| 在线视频 一区二区 | 久久99国产亚洲高清 | 浮力影院欧美三级日本三级 | 亚洲欧美日韩在线不卡 | 91久久偷偷看嫩草影院无费 | 亚洲欧美日韩国产综合高清 | 国产成人亚洲综合欧美一部 | 99精品视频在线观看免费播放 | 成年网站免费视频拍拍拍 | 国产 日韩 欧美视频二区 | 午夜老湿机免费福利视频在线观看 | 亚洲精品欧美精品日韩精品 | 狠狠色噜噜狠狠狠狠97老肥女 | 在线观看免费国产成人软件 |