前言

页面跳转的时候,url上经常会带请求参数,格式如:​​api/projects?key=123page=1&size=10​​。

使用ajax提交数据的时候,有时候需要获取url上的请求参数,如何能取到url上的请求参数呢?

获取url上请求参数

以下JS函数用于获取url参数:

function getQueryVariable(variable)
{
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if(pair[0] == variable){return pair[1];}
}
return(false);
}


url 实例:​​http://www.xx.com/index.html?id=1&image=awesome.jpg​

  • 调用 getQueryVariable("id") 返回 1。
  • 调用 getQueryVariable("image") 返回 "awesome.jpg"。

方法来自菜鸟教程​​https://www.runoob.com/w3cnote/js-get-url-param.html​

另外一个示例

javascript 获取当前 URL 参数,需要获取页面的 URL 参数的时候,可以通过下面这段 javascript 代码获取:

    var getParam = function(name){
var search = document.location.search;
var pattern = new RegExp("[?&]"+name+"\=([^&]+)", "g");
var matcher = pattern.exec(search);
var items = null;
if(null != matcher){
try{
items = decodeURIComponent(decodeURIComponent(matcher[1]));
}catch(e){
try{
items = decodeURIComponent(matcher[1]);
}catch(e){
items = matcher[1];
}
}
}
return items;
};


使用示例

var key=getParam('key')
alert(key));