在asp中,我们很多时候获取url都是利用javascript来实现的,这个很简单,用window.location.href就可以获得了URL的全部路径,包括后面的参数,然后再用split函数来分离就好了

但在asp中,我们很多时候想只在asp的服务器端来实现这个功能,如下的这段代码就可以实现了

Request.ServerVariables("SCRIPT_NAME") 这条语句获取得到的URL是不包括后面的参数的

Request.QueryString 这个就可以直接获得参数(不包括前面的域名,只有参数)

 综合利用这两个服务器变量,我们就可以通过适当的修改就可以获得带有参数的URL了

response.Write"SCRIPT_NAME获取的值:" &Request.ServerVariables("SCRIPT_NAME")&"<br>"

'=========================
'获取当前Url参数的函数
Private Function GetUrl()
Dim ScriptAddress,M_ItemUrl, M_item
ScriptAddress = CStr(Request.ServerVariables("SCRIPT_NAME")) '取得当前地址
M_ItemUrl = ""
response.Write(Request.QueryString&"<br>")
If (Request.QueryString <> "") Then
ScriptAddress = ScriptAddress & "?"
For Each M_item In Request.QueryString
'如果页面传递参数是用page变量,那么判断一下page是否已经使用,避免重复!
If InStr("page",M_Item)=0 Then
M_ItemUrl = M_ItemUrl & M_Item &"="& Server.URLEncode(Request.QueryString(""&M_Item&"")) & "&"
End If
Next
end if
GetUrl = ScriptAddress & M_ItemUrl
if instr(1,GetUrl,"?",1)<1 then
GetUrl=GetUrl&"?"
end if
End Function
'=============================

response.Write GetUrl