c# - Javascript 由于 Response.Redirect() 而被忽略

标签 c# javascript asp.net

我目前正在使用 C# 开发 asp.net,我需要显示一个消息框并确认用户的输入并重定向到另一个页面,我的代码是这样的:

protected void Button1_Click(object sender, EventArgs e)
{
    System.Text.StringBuilder sb = new System.Text.StringBuilder();
    sb.Append("<script language='javascript'>");
    sb.Append("if (confirm('YES OR NO?')){ /*some javascript code*/ }");
    sb.Append("</script>");

    Page.RegisterStartupScript("FocusScript", sb.ToString());
   Response.Redirect("Default.aspx");

}

这里的问题是直接重定向到下一页而不显示消息框。 如果我删除 Response.Redirect("Default.aspx"); 它会成功显示消息框。我认为这里可能是 Response.Redirect()javascript

相比具有更高的优先级

我试过用

sb.Append("if (confirm('YES OR NO?')){ window.location.href = \"Default.aspx"; }\");

没有使用 Response.Redirect() 但页面没有被重定向,我应该怎么做才能解决这个问题?

最佳答案

你绝对需要在服务器端处理这个吗?事实上,这就是一件非常简单的事情变得令人困惑的地方。

例如,如果您可以使用 Javascript/jQuery 处理它,您可以做一些简单的事情,例如:

$('#Button1').click(function(){
   if (confirm("Yes or No?")){
      window.location = "/default.aspx";
   }
});

关于c# - Javascript 由于 Response.Redirect() 而被忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6329659/

相关文章:

c# - 字符串参数中的类型安全

c# - 使用 javascript 禁用 onselect() 事件?

c# - 可以打开上传到blob容器中的excel文件吗?

javascript - JQuery Click 事件使程序崩溃,没有控制台错误

asp.net - 如何在IIS 7.5中配置应用程序池在停止时自动重新启动?

asp.net - 更改 Razor View 似乎会重新启动我的应用程序

c# - 在 MVC 中将静态 URL 路由到 Controller 操作?

javascript - 有没有办法在使用 CommonJS 模块和 require 时包含一个目录?

c# - Asp.net Web API 无法从文件路径读取文件