<div class="xwewTPD"> <div class="DivLeft"> 部门选择:<br /> <asp:TreeView ID="TreeView1" runat="server" Expanded="false" ShowCheckBoxes="All" ShowLines="True"> </asp:TreeView> </div> <div class="DivRight"> 已选部门:<br /> <select id="Select1" multiple="multiple" name="D1" style="width: 360px; height: 365px"> </select> </div> </div>
if (!IsPostBack) { SetTreeView(this.TreeView1); //TreeView1.Attributes.Add("OnClick", "OnTreeNodeChecked()"); } private void SetTreeView(TreeView TreeV) { DataSet ds = bll.FillList(); DataView dv = ds.Tables[0].DefaultView; dv.RowFilter = "PARENTID='0'"; TreeV.Nodes.Clear(); //加入根节点 foreach (DataRowView drv in dv) { TreeNode RootNode = new TreeNode(drv.Row["DEPTNAME"].ToString(), drv.Row["DEPTCODE"].ToString()); RootNode.Expanded = false; BuildNode(ds, RootNode);//子节点 this.TreeView1.Nodes.Add(RootNode); RootNode.NavigateUrl = "javascript:alert('" + RootNode.Text + "');"; } } //加入子节点 public void BuildNode(DataSet ds, TreeNode node) { DataView dv = ds.Tables[0].DefaultView; dv.RowFilter = "PARENTID =" + node.Value; foreach (DataRowView drv in dv) { TreeNode ChildNode = new TreeNode(drv.Row["DEPTNAME"].ToString(), drv.Row["DEPTCODE"].ToString()); BuildNode(ds, ChildNode); node.ChildNodes.Add(ChildNode); ChildNode.Expanded = false; } node.NavigateUrl = "javascript:alert('" + node.Text + "');"; }
TreeView勾选完后,当前勾选的节点文本,填充到ListBox或者HTML的Select中,
本人小白,跪求高手,求详细代码。C#,JS都可以~
基于jquery的js写好了,运行了一下 ok
<script type="text/javascript" src="jscripts/jquery-1.7.1.min.js"></script> <script type="text/javascript"> $(document).ready(function () { $('#TreeView1 input').each(function (i) { $(this).click(function () { if ($(this).attr('checked')) { $('#Select1').append('<option id="' + ('input' + i) + '" value="' + i + '">' + $(this).next().html() + '</options>'); } else { $('#input' + i).remove(); } }); }); }); </script>
谢谢!我先试试!
运行没有效果。
@AaronSL:
你项目中有这个jscripts/jquery-1.7.1.min.js吗?
要换成你项目中的jquery api路径
家里没环境,不过可以远程 , 如果你方便!
QQ 7407997