如何实现HTML页面地址栏参数传递与获取

如何实现HTML页面地址栏参数传递与获取,第1张

 /* 

*函数功能:从href获得参数 

*sHref: 

*sArgName:arg1, arg2 

*return: the value of arg. d, re 

*/ 

function GetArgsFromHref(sHref, sArgName) 

var args = sHref.split("?") 

var retval = "" 

if(args[0] == sHref) /*参数为空*/ 

return retval /*无需做任何处理*/ 

var str = args[1] 

args = str.split("&") 

for(var i = 0 i < args.length i ++) 

str = args[i] 

var arg = str.split("=") 

if(arg.length <= 1) continue 

if(arg[0] == sArgName) retval = arg[1] 

return retval 

}

function UrlSearch() 

{

   var name,value 

   var str=location.href //取得整个地址栏

   var num=str.indexOf("?") 

   str=str.substr(num+1) //取得所有参数   stringvar.substr(start [, length ]

   var arr=str.split("&") //各个参数放到数组里

   for(var i=0i < arr.lengthi++){ 

    num=arr[i].indexOf("=") 

    if(num>0){ 

     name=arr[i].substring(0,num)

     value=arr[i].substr(num+1)

     this[name]=value

     } 

    } 

var Request=new UrlSearch() //实例化

var name=Request.name

望采纳。

页面URL: xxx.asp?url=http://www.baidu.com

通过JS获取上述URL参数即可:

JS获取方法如下:

<Script language="javascript">

function GetRequest() {

var url = location.search//获取url中"?"符后的字串

var theRequest = new Object()

if (url.indexOf("?") != -1) {

var str = url.substr(1)

strs = str.split("&")

for(var i = 0i <strs.lengthi ++) {

theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1])

}

}

return theRequest

}

</Script>

调用方法:

<Script language="javascript">

var Request = new Object()

Request = GetRequest()

window.location.href = Request['url']//获取该地址并 跳转

</Script>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6143294.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存