【问题标题】:call the javascript alert and redirect url issue调用 javascript 警报和重定向 url 问题
【发布时间】:2016-02-03 20:57:18
【问题描述】:

女士们,先生们,

我正在尝试从按钮调用警报,并且在警报之后我希望它重定向到我的主页。但是,当我从 asp 按钮调用以下代码时

ClientScript.RegisterStartupScript(this.GetType(), "Success", "alert('" + "Activation mail has been sent to the email address. Please check your email!" + "');window.location.href('Home.aspx');", true);

它不起作用。可以调用警报,因此此 javascript 是正确的。 我怀疑是回发导致重定向不起作用。所以我把更新面板作为结果按钮根本不能调用该函数。

最后我尝试在 javascript 中设置 return false 也不起作用。

我也尝试在调用 javascript 函数后进行响应重定向,但 javascript 和运行的后台代码同步,因此页面将在警报调用之前重定向。

如何实现我的方案?

【问题讨论】:

  • 如果您从 UpdatePanel 回发,请使用 ScriptManager 而不是 ClientScript。还要检查它们的参数顺序

标签: javascript c# asp.net


【解决方案1】:

我建议你不要使用

window.location.href('')

使用

window.location.replace('')

如果你想像 html 重定向一样重定向。
来源:How to redirect to another webpage in JavaScript/jQuery?

但是,就像 说你可以使用:

window.location ='Home.aspx'

【讨论】:

    【解决方案2】:

    正如其他答案所说:

     window.location.href = 'Home.aspx'
    

    但这是一个相对路径,所以它仅在当前页面与主页位于同一文件夹中时才有效。 Redirecting to a relative URL in JavaScript.

    使用“/”进入您网站的根文件夹:

     window.location.href = '/Home.aspx'
    

    【讨论】:

      【解决方案3】:

      href 不是一个函数,所以你不能像href('Home.aspx') 那样调用它。改变

      window.location.href('Home.aspx')
      

      window.location ='Home.aspx'
      

      【讨论】:

        【解决方案4】:

        试试这个。

        ClientScript.RegisterStartupScript(this.GetType(), "Success", "alert('Activation mail has been sent to the email address. Please check your email!');window.location ='Home.aspx';", true);
        

        【讨论】:

        • 欢迎来到 Stack Overflow!虽然此代码可能会回答问题,但提供有关此代码为何和/或如何回答问题的额外上下文可提高其长期价值。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-01-10
        • 2015-04-15
        • 2021-03-30
        • 1970-01-01
        • 2020-07-24
        • 2021-02-27
        • 2020-12-03
        相关资源
        最近更新 更多