有的时候想在客户端触发服务器端控件的CLICK事件时我们这么写__doPostBack("id",""),但是为什么有的时候会失效呢? 1.取得用戶端指令碼函式的參考,(這個參考會) 在叫用時讓伺服器回傳網頁。 2.取得用戶端指令碼函式的參考,(這個參考會) 在叫用時讓伺服器回傳網頁。這個方法同時也傳遞參數給在伺服器上執行回傳處理的伺服器控制項。public string GetPostBackEventReference(Control, string); <asp:Button id="Button1" runat="server" Text="Button"></asp:Button>
一个客户端控件用来触发服务器端 <a href="#" onclick="document.getElementById('Button1').click()">触发服务器端按钮事件</a>
(2) <a href="#" onclick="<%=PostBack()%>">触发服务器端按钮事件</a>
后台 protected string PostBack()
{ return this.Page.GetPostBackEventReference(this.Button1,"haha"); } 通过__EVENTARGUMENT="haha"可以判断是不是点了那个链接的PostBack if(Request["__EVENTARGUMENT" ]=="haha")
{ Response.Write("这个是链接的PostBack"); } else { Response.Write("这个不是链接的PostBack"); } |
__doPostback方法
2009年04月25日 星期六 16:04