TreeView无刷新获取text及value实现代码

  前台代码:

  

复制代码 代码如下:

  <html xmlns="http://www.w3.org/1999/xhtml">

  <head id="Head1" runat="server">

  <title></title>

  <style type="text/css">

  #middle{ top:0; left:0;background-color:#fff; position:absolute; z-index:2; filter:alpha(opacity=60); display:none;}

  #showTree{ width:300px; height:200px; position:fixed; z-index:2; display:none; border:1px solid red;}

  </style>

  <script type="text/javascript">

  function ShowDIv() {

  var txt = document.getElementById("txt");

  txt.blur();

  var divmid = document.getElementById("middle");

  divmid.style.display = "block";

  divmid.style.width = "100%";

  divmid.style.height = "100%";

  var divshow = document.getElementById("showTree");

  divshow.style.display = "block";

  divshow.style.left = txt.offsetLeft;

  divshow.style.top = txt.offsetTop;

  return false;

  }

  function CloseDiv() {

  var divmid = document.getElementById("middle");

  divmid.style.display = "none";

  var divshow = document.getElementById("showTree");

  divshow.style.display = "none";

  return false;

  }

  function TreeViewClick() {

  if (event.srcElement.innerText == "" || event.srcElement.length <= 0 || event.srcElement.nameProp == undefined) {

  return true;

  }

  var id = event.srcElement.id;

  var a = document.getElementById(id);

  var href = a.href;

  var index = href.indexOf("#");

  var retstr = href.substr(index + 1);

  //

  var ret = a.innerText;

  if (ret != "") {

  document.getElementById("txt").value = ret;

  document.getElementById("TextBox2").value = retstr;

  document.getElementById("HiddenField1").value = retstr;

  }

  return false;

  }

  </script>

  </head>

  <body>

  <form id="form1" runat="server">

  <div>

  <asp:HiddenField ID="HiddenField1" runat="server" />

  <asp:Button ID="Button1" runat="server" Text="显示value" onclick="Button1_Click" />

  <br />

  <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

  <br />

  Text:<asp:TextBox ID="txt" runat="server" onfocus="return ShowDIv()"></asp:TextBox>

  <br />

  Value:

  <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>

  </div>

  <div id="middle"></div>

  <div id="showTree">

  <br />

  <br />

  <input type="button" value="close" onclick="return CloseDiv()" />

  <asp:TreeView ID="TreeView1" runat="server">

  <Nodes>

  <asp:TreeNode Text="A" Value="0" NavigateUrl="#0">

  <asp:TreeNode Text="A1" Value="00" NavigateUrl="#00">

  <asp:TreeNode Text="A11" Value="000" NavigateUrl="#000"></asp:TreeNode>

  <asp:TreeNode Text="A12" Value="001" NavigateUrl="#001"></asp:TreeNode>

  </asp:TreeNode>

  <asp:TreeNode Text="A2" Value="01" NavigateUrl="#01"></asp:TreeNode>

  <asp:TreeNode Text="A3" Value="02" NavigateUrl="#02"></asp:TreeNode>

  </asp:TreeNode>

  <asp:TreeNode Text="B" Value="1" NavigateUrl="#1">

  <asp:TreeNode Text="B1" Value="10" NavigateUrl="#10"></asp:TreeNode>

  <asp:TreeNode Text="B2" Value="11" NavigateUrl="#11"></asp:TreeNode>

  <asp:TreeNode Text="B3" Value="12" NavigateUrl="#12"></asp:TreeNode>

  </asp:TreeNode>

  </Nodes>

  </asp:TreeView>

  </div>

  </form>

  </body>

  </html>

  后台代码:

  

复制代码 代码如下:

  public partial class newpage_Default2 : System.Web.UI.Page

  {

  protected void Page_Load(object sender, EventArgs e)

  {

  this.TreeView1.Attributes.Add("onclick", "return  TreeViewClick()");//增加特性,实现无自动回传

  }

  protected void Button1_Click(object sender, EventArgs e)

  {

  this.TextBox1.Text = this.HiddenField1.Value;

  }

  }