js alert box / lightbox根据查询字符串中的值显示不同的消息

时间:2014-10-31 13:32:36

标签: javascript html

请帮我解决这个问题。 所以我有一个页面说page1.aspx,里面有一个指向另一个网站的链接。当我点击链接时,它会带我到另一个页面进行一些kindda验证,然后将我重新定向回我来自的页面 - page1.aspx - 使用查询字符串,所以我最终结束了相同的页面 - 带有查询字符串的相同文件名 - 这是page1.aspx?messagestatus = fail,或page1.aspx?messagestatus = pass。然后会弹出一个警告框并显示一条消息取决于查询字符串的状态(通过或失败)

下面的代码适用于我(我通过手动添加?messagestatus = pass或者失败到url来测试它),并且我将GetQString()函数添加到body onLoad。一个问题是我无法访问<body>标记来添加onload函数,是否有其他方法可以在不触及<body>标记的情况下激活该函数?

另外,如果你知道任何类似的东西,但使用灯箱/模态盒 - 请指导我吗?谢谢专家

这是我的代码:

<!DOCTYPE>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
 <script type="text/javascript">
function querySt(Key) {
    var url = window.location.href;
    KeysValues = url.split(/[\?&]+/);
    for (i = 0; i < KeysValues.length; i++) {
            KeyValue= KeysValues[i].split("=");
            if (KeyValue[0] == Key) {
                return KeyValue[1];
        }
    }
}
</script>
<script type="text/javascript">
function GetQString(Key) {

    if (querySt("messagestatus")) {
         var value = querySt("messagestatus");
         //alert(value);
         if (value=='fail')
         {
            alert('Message:\nFailed!');
         }
         if (value=='pass')
         {
            alert('Message:\nPass!');        
         }
    }
 }
</script>

</head>

<body onload="GetQString();">
something here, <a href="#">this's the link that'll go out to another page, then redirects back to this page with the ?messagestatus=fail (or pass) querystring</a>.

</body>
</html>

1 个答案:

答案 0 :(得分:0)

@tony..Capture查询字符串并使用以下代码显示消息。

   string urlid = Request.QueryString["urlid"];
   if (urlid == "pass"){
   //Alert message
   }
   else if (urlid == "fail"){
   //Alert message
   }

对于提醒消息,请使用以下代码之一,以适用于您的方式。

1. Page.ClientScript.RegisterStartupScript(Page.GetType(), "my", "alert('Pass');", true);
 
2. ClientScript.RegisterStartupScript(typeof(Page),"PopUp", "<script language='JavaScript'>window.alert('Pass');</script>");