国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

js獲取TreeView控件選中節(jié)點的Text和Value值的方法

2024-05-06 14:20:47
字體:
供稿:網(wǎng)友
在實際項目中,遇到一個問題,首先彈出一個新窗口,新窗口中放了一個TreeView控件,TreeView控件的數(shù)據(jù)綁定在我的上一篇隨筆(TreeView綁定XML數(shù)據(jù)源C#代碼示例)中有講到,現(xiàn)在要解決的是,如何單擊TreeView中一個節(jié)點,返回Text和Value到父頁面并關閉該新窗口。
首先,在后臺代碼中為TreeView添加屬性onclick以支持TreeView的客戶端事件,代碼如下:
代碼如下:
if (!IsPostBack)
{
TreeView1.Attributes.Add("onclick", "ReturnValue()");//ReturnValue為javascript函數(shù)
BindTreeView();
}

那現(xiàn)在就要解決如何通過js獲得TreeView中被選中的那個節(jié)點,腳本如下:
代碼如下:
function ReturnValue() {
var objNode = event.srcElement;
var unitid = event.srcElement.href;
if (objNode.tagName != "SPAN") {
return;
}
window.opener.document.getElementById("txtUnit").value = objNode.getAttribute("innerHtml");
window.opener.document.getElementById("txtUnitID").value = unitid;
window.close();
}

其實這里用了點小花招,因為我實在不知道在哪個屬性里能獲得綁定給TreeView的ValueField的值,所以,Value值我一并綁給了NavigateUrl,也就是寫黃色部分代碼的原因,Html代碼如下:
代碼如下:
<asp:TreeView ID="TreeView1" runat="server" ExpandDepth="1">
<DataBindings>
<asp:TreeNodeBinding TextField="NAME" ValueField="Value" NavigateUrlField="Value" SelectAction="None" />
</DataBindings>
</asp:TreeView>

紅色部分代碼是用來獲取TreeView上顯示文字的,因為如果你去查看源文件的話,你會發(fā)現(xiàn),TreeView的Text屬性值被放在了SPAN中。
綠色部分代碼是用來回填父頁面的,但是要注意的是,"txtUnit"必須是客戶端控件,因為如果是服務器端控件,彈窗在編譯時會報不存在該控件。
這樣,我需要的功能就實現(xiàn)了!另外,有人可能會說,父頁面中用來裝載回填值的是客戶端控件,那如果要在服務器事件中使用怎么辦?也很簡單,C#代碼如下:
Request.Form["txtUnit"].ToString();
但是要注意了,這里的"txtUnit"可不是控件ID,而是name屬性了!
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 尤溪县| 绍兴市| 贺兰县| 溧阳市| 庆城县| 通海县| 修文县| 朝阳区| 新建县| 凤凰县| 上饶县| 汤阴县| 会昌县| 乌拉特前旗| 谷城县| 英山县| 敖汉旗| 南郑县| 新昌县| 布尔津县| 沐川县| 乌拉特前旗| 宁化县| 高陵县| 泰兴市| 贡嘎县| 饶河县| 土默特左旗| 天全县| 会同县| 洪泽县| 高碑店市| 新田县| 乡宁县| 潜山县| 乌恰县| 桦南县| 崇义县| 梁山县| 攀枝花市| 宁明县|