显示页面URL是否与经典ASP中的字符串匹配?

时间:2011-03-28 08:00:51

标签: asp-classic

我正在尝试创建一个if语句,仅当当前页面URL与给定字符串匹配时才显示一行JavaScript。这是一些伪代码:

if URL matches ("example.com/sitename/") then
response.Write("<script='file.js'></script>")
end if

问题是如何检查当前页面的URL是否与字符串匹配?

非常感谢!


感谢您的回复。我试图通过一系列可能的URL匹配使它更复杂一些。我创建了以下asp,但它无法正常工作。该脚本正在写入URL不匹配的页面上。有什么看起来不对吗?我无法理解!

<%
    Dim pageURL 

    pageURL = Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
    URLArray = Array("example.net/folder1/","example.net/folder2/")
    For Each URLsnippet In URLArray
        if instr(pageURL, URLsnippet) then
            response.Write("<!--BEGIN EXCLUDE--><script type='text/javascript' src='script.js'></script><!--END EXCLUDE-->")
        else
        end if
    Next
%>

它应匹配与example.net/folder1和example.net/folder2匹配的网址,但它也匹配example.net folder3!

2 个答案:

答案 0 :(得分:1)

if Request.ServerVariables("URL") = "/myurl.com/script.asp" then
 ' do stuff
end if

答案 1 :(得分:1)

如果您只想要网址,请尝试使用

var url = "<%=Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")";
if(url == "site.com/script.asp")
{
    //Do stuff
}

如果您还需要查询字符串,请尝试

var url = "<%=Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL") & "?" & Request.Querystring%>";
if(url == "site.com/script.asp?var=123")
{
    //Do stuff
}
相关问题