JavaScript从后面的C#代码确认

时间:2012-01-17 02:33:52

标签: c# javascript asp.net

我使用以下代码隐藏来弹出javascript以进行符合,它运行良好但它会将用户重定向到TestPage.aspx,无论用户选择是否为是。

lblMsg.InnerHtml = @"
    <script type='text/javascript'>
        confirm('Do you want to continue?');
        window.location='TestPage.aspx?ID=" + Request.QueryString["ID"].ToString() + "&txtTest=" + Server.UrlEncode(txtTest.Text) + strSomeString + "'
    </script>";

有什么想法吗?

我用这个,这次甚至没有弹出。

lblMsg.InnerHtml = @"
    <script type='text/javascript'>
        confirm('Do you want to continue?');
        window.location='TestPage.aspx?ID=" + Request.QueryString["ID"].ToString() + "&txtTest=" + Server.UrlEncode(txtTest.Text) + strSomeString + "'; return false;
    </script>";

2 个答案:

答案 0 :(得分:2)

您可以尝试:

lblMsg.InnerHtml = @"
    <script type='text/javascript'>
        if(confirm('Do you want to continue?')) {
            window.location='TestPage.aspx?ID=" + Request.QueryString["ID"].ToString() + "&txtTest=" + Server.UrlEncode(txtTest.Text) + strSomeString + "'; 
        }
    </script>";

confirm函数返回bool,具体取决于用户是否确认了选择。只有在必要时,您才可以使用它重定向到下一页。

答案 1 :(得分:0)

您可以从确认对话框中获取返回的答案。并取决于你做你想要的。你需要像这样编辑你的javascript,

var answer = confirm("Do you want to continue?")
   if (answer){
            window.location='TestPage.aspx?ID="' + Request.QueryString["ID"].ToString() +  "&txtTest=" + Server.UrlEncode(txtTest.Text) + strSomeString + "\""; 
    return false;
   }