【发布时间】:2014-04-23 12:33:11
【问题描述】:
我知道我们可以通过使用“onClientClick”来实现这一点,但我想在确认框之前先检查验证。
javascript
function showConfirm() {
var result = window.confirm('Are you sure?');
if (result == true)
alert("ok");
}
html
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
C#
protected void Button1_Click(object sender, EventArgs e)
{
if(checkValidation() == true)
{
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "scr", "javascript:showConfirm();", true);
//if(result == true) //how to get the result value?
//{
////run some code
//insert data into sql
//}
}
}
无论如何我可以在后面的代码中获得确认结果吗?如果没有 if-else-statement,数据将在用户选择他们的决定之前插入到 sql 中。
【问题讨论】:
-
您可以使用 ajax 进行验证并显示警报(我认为这不是最佳做法)。您可以使用 javascript 进行所有验证,如果您需要从服务器(db 字段)获取它,那么您可以使用 ajax。
-
是的,我确实需要在插入之前从 sql 中获取数据。你的意思是什么样的ajax功能?更新面板?
-
我个人避免使用更新面板。您可以通过 jquery 或 pagemethods 使用 ajax。
-
tq 的建议,但我不敢相信我找到了一个非常简单的解决方案。请看我的回答:)
-
回发是无缘无故的。更好地使用客户端代码进行验证。
标签: c# javascript asp.net confirm