有没有更简单的方法来显示带有 ASP.NET 的警告对话框?
Is there an easier way to show an alert dialog with ASP.NET?
我正在使用 ASP.NET 和 C# 创建表单。当用户点击提交时,我验证输入并继续。如果出于任何原因输入无效,我会显示一个警报,通知用户这些问题。如果一切正常,我将使用给定的输入进行工作。我的问题是,当我单击提交按钮时,页面会刷新,并清除所有输入。这是我在后面的代码中所做的示例:
saveButton.Click += (s, e) => {
var errors = "";
if (string.IsNullOrWhitespace(myField.Text)) errors += "myField is empty or consists of only whitespace.\n";
//do this for each field
if (errors == "") { //no errors found!
//use the input
}
else { //something's invalid
//alert the user
ShowMessage("Please review these problems before continuing:\n\n" + errors);
}
};
不会抛出任何异常,但如果故意发送无效输入,页面会在显示弹出窗口之前刷新。这是我为 ShowMessage()
:
尝试过的
private void ShowMessage(string msg) {
ClientScript.RegisterClientScriptBlock(GetType(), DateTime.Now.ToString(), "alert(\'" + message + "\');", true);
}
和
private void ShowMessage(string msg) {
HttpContext.Current.Response.Write("<script language=\"JavaScript\">alert(\"" + message + "\");</script>");
}
再一次,每个人在消息显示之前刷新页面!
有没有更简单的方法可以在不刷新页面的情况下显示消息对话框?
这个怎么样:
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), title,
"alert('" + somemessage + "');", true);
或喜欢
ScriptManager.RegisterStartupScript(this,this.GetType(),"redirect",
"alert('message'); window.location='" +
Request.ApplicationPath + "yourPage.aspx';",true);
您可以将此 C# 代码包含在按钮点击 hundler 中:
MessageBox.Show("Wrong input.", " Error :", MessageBoxButton.OK, MessageBoxImage.Stop);
您可以通过添加关闭第一个 window:
Close();
您可以使用 jquery 来验证输入,然后在任何无效的情况下显示弹出窗口。这样您就不必进行回发,从而提供更好的用户体验。
我正在使用 ASP.NET 和 C# 创建表单。当用户点击提交时,我验证输入并继续。如果出于任何原因输入无效,我会显示一个警报,通知用户这些问题。如果一切正常,我将使用给定的输入进行工作。我的问题是,当我单击提交按钮时,页面会刷新,并清除所有输入。这是我在后面的代码中所做的示例:
saveButton.Click += (s, e) => {
var errors = "";
if (string.IsNullOrWhitespace(myField.Text)) errors += "myField is empty or consists of only whitespace.\n";
//do this for each field
if (errors == "") { //no errors found!
//use the input
}
else { //something's invalid
//alert the user
ShowMessage("Please review these problems before continuing:\n\n" + errors);
}
};
不会抛出任何异常,但如果故意发送无效输入,页面会在显示弹出窗口之前刷新。这是我为 ShowMessage()
:
private void ShowMessage(string msg) {
ClientScript.RegisterClientScriptBlock(GetType(), DateTime.Now.ToString(), "alert(\'" + message + "\');", true);
}
和
private void ShowMessage(string msg) {
HttpContext.Current.Response.Write("<script language=\"JavaScript\">alert(\"" + message + "\");</script>");
}
再一次,每个人在消息显示之前刷新页面! 有没有更简单的方法可以在不刷新页面的情况下显示消息对话框?
这个怎么样:
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), title,
"alert('" + somemessage + "');", true);
或喜欢
ScriptManager.RegisterStartupScript(this,this.GetType(),"redirect",
"alert('message'); window.location='" +
Request.ApplicationPath + "yourPage.aspx';",true);
您可以将此 C# 代码包含在按钮点击 hundler 中:
MessageBox.Show("Wrong input.", " Error :", MessageBoxButton.OK, MessageBoxImage.Stop);
您可以通过添加关闭第一个 window:
Close();
您可以使用 jquery 来验证输入,然后在任何无效的情况下显示弹出窗口。这样您就不必进行回发,从而提供更好的用户体验。