js 获取(接收)地址栏参数值的方法

(编辑:jimmy 日期: 2024/10/10 浏览:2)

当地址栏含有参数,我们可以再目标页面通过window.location.search来获取我们需要的参数及其值
复制代码 代码如下:
// 获取地址栏的参数数组
function getUrlParams()
{
var search = window.location.search ;
// 写入数据字典
var tmparray = search.substr(1,search.length).split("&");
var paramsArray = new Array;
if( tmparray != null)
{
for(var i = 0;i<tmparray.length;i++)
{
var reg = /[=|^==]/; // 用=进行拆分,但不包括==
var set1 = tmparray[i].replace(reg,'&');
var tmpStr2 = set1.split('&');
var array = new Array ;
array[tmpStr2[0]] = tmpStr2[1] ;
paramsArray.push(array);
}
}
// 将参数数组进行返回
return paramsArray ;
}
// 根据参数名称获取参数值
function getParamValue(name)
{
var paramsArray = getUrlParams();
if(paramsArray != null)
{
for(var i = 0 ; i < paramsArray.length ; i ++ )
{
for(var j in paramsArray[i] )
{
if( j == name )
{
return paramsArray[i][j] ;
}
}
}
}
return null ;
}

当前我们的页面地址是https://www.jb51.net/tatame/admin/EditPosts.aspx?opt=1
可以看到url上含有一个参数
var opt = getParamValue("opt") ;
alert(opt);弹出为1了 。
复制代码 代码如下:
/********
接收地址栏参数
key:参数名称
**********/
function GetQuery(key) {
var search = location.search.slice(1); //得到get方式提交的查询字符串
var arr = search.split("&");
for (var i = 0; i < arr.length; i++) {
var ar = arr[i].split("=");
if (ar[0] == key) {
return ar[1];
}
}
}

在页面加载调用GetQuery('test')这个函数就好了,非常实用

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。