簡體   English   中英

回叫電話順序

[英]Order of Postback Calls

我在aspx頁面上有兩個按鈕( ButtonAButtonB )和一個文本框( TexboxA )。

TexboxA的模糊效果下,我調用Javascript事件以編程方式單擊ButtonA

我的問題是:

  1. 當我專注於TextBoxA ,我直接單擊ButtonB ,首先觸發哪個onclick事件? ButtonA_Click因為我失去了對TextBoxA的關注並以編程方式觸發了ButtonA的單擊,或者ButtonB_Click因為我直接單擊了它?

  2. 如何防止ButtonB_Click之前觸發ButtonA_Click徹底完蛋了?

Aspx代碼:

<asp:TextBox ID="TextBoxA" runat="server" onblur="ClickA();"/>

<asp:Button ID="ButtonA" runat="server" OnClick="ButtonA_Click();"/>

<asp:Button ID="ButtonB" runat="server" OnClick="ButtonB_Click();"/>

JS代碼:

function ClickA(){
    document.getElementById('<%=ButtonA.ClientId%>').click();
}

也許您的整體邏輯不是很好,但是如果在調用服務器代碼之前需要在客戶端做一些事情,則可以使用Button的OnClientClick方法。

這還允許中止服務器端方法單擊。

例如看這里:

ASP .NET按鈕-OnClientClick =“返回功能()”與OnClientClick =“功能()”以及https://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.button.onclientclick( v = vs.110)的.aspx

如果服務器端代碼的執行順序很重要,那么也許您應該確保在服務器端執行它,而不是嘗試在客戶端限制它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM