![](/img/trans.png)
[英]ASP.net - Button - Javascript Confirm dialog - execute SOME server-side code?
[英]Trigger javascript confirm based on server side logic (ASP.NET)
有沒有辦法使以下代碼有效? 基本上,當我單擊btnOne時,如果a為true,我希望它會彈出確認框。 如果我按是,那么它將執行btnTwo方法。 否則,它什么也不會做。 目前,它沒有彈出窗口,我不確定為什么。 有人可以指出正確的方向嗎? 或讓我知道實現此目標的其他方法。
任何信息將不勝感激。
例如:
public void btnTwo(object sender, EventArgs e)
{
//Do some processing
}
public void btnOne(object sender, EventArgs e)
{
if( a == true )
btnTwo.Attributes["onClick"] = "return confirm('test');"
btnTwo(sender, new EventArgs());
}
我認為您正在混合很多客戶端和服務器端? 您可以在客戶端選中“ a”(隱藏字段)嗎?
或在代碼后面檢查值之后,添加帶有確認的啟動腳本,然后單擊“確定”,單擊javascript中的第二個按鈕。
Protected Sub btnSecond_Click(sender As Object, e As System.EventArgs) Handles btnSecond.Click
Me.lblInfo.Text = "SecondClick is done!"
End Sub
Protected Sub btnFirst_Click(sender As Object, e As System.EventArgs) Handles btnFirst.Click
a = 10
Dim action As String = "<script> if(confirm('sure ?')){ document.getElementById('" & btnSecond.ClientID & "').click()} </script>"
If (a > 5) Then
Page.ClientScript.RegisterStartupScript(Me.Page.GetType(), "startConfirm", action)
End If
End Sub
和標記:
<form id="form1" runat="server">
<div>
<asp:Button runat="server" ID="btnFirst" />
</br>
<asp:Button runat="server" ID="btnSecond" />
<asp:Label runat="server" ID="lblInfo" />
</div>
</form>
確保已到達代碼,並改用OnClientClick
:
protected void Page_Load(object sender, EventArgs e)
{
bool a = true;
if (a)
btnTwo.OnClientClick = "return confirm(\"Are you sure?\");";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.