這個(gè)事件不會(huì)主動(dòng)postback,需要手動(dòng)寫javascript觸發(fā)。對(duì)網(wǎng)上找到的方法做了些改進(jìn),增加UpdatePanel,以免頁(yè)面不停的刷。這里就不考慮性能神馬的了,因?yàn)榧热豁?xiàng)目已經(jīng)允許選擇使用TreeView服務(wù)器控件了,也就不要在乎多一個(gè)UpdatePanel了。
前臺(tái)頁(yè)面
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
< html > < head runat = "server" > < title ></ title > < script type = "text/javascript" > function postBackByObject() { var o = window.event.srcElement; if (o.tagName == "INPUT" && o.type == "checkbox") { //第一個(gè)參數(shù)寫UpdatePanel的ID,否則就是整個(gè)頁(yè)面刷了 __doPostBack("UpdatePanel1", ""); } } </ script > </ head > < body > < form id = "form1" runat = "server" > < asp:ScriptManager ID = "ScriptManager1" runat = "server" > </ asp:ScriptManager > < asp:UpdatePanel ID = "UpdatePanel1" runat = "server" > < ContentTemplate > < asp:TreeView runat = "server" ID = "treeView1" OnTreeNodeCheckChanged = "treeView1_TreeNodeCheckChanged" > </ asp:TreeView > </ ContentTemplate > </ asp:UpdatePanel > </ form > </ body > </ html > |
后臺(tái)頁(yè)面
1
2
3
4
5
6
7
|
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { treeView1.Attributes.Add( "onclick" , "postBackByObject()" ); } } |
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:https://www.cnblogs.com/David-Huang/p/3857295.html