我有一个应用程序需要从URL解析参数。但网址有特殊字符'#'。
网址:http://localhost:8080/test.html?parms=PESTL4#2
我打印了windows.location,结果是" http://localhost:8080/test.html?parms=PESTL4#2"。
我使用以下示例代码获取 parms ,然后返回PESTL4。 它是如何工作的?
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);
}
答案 0 :(得分:0)
window.location.search
返回查询字符串?parms=PESTL4
,而#2
第一行删除'?'。
然后将查询字符串拆分为对name=joe&age=18
到['name=joe','age=18']
在for loop
中,它将字符串拆分为key
value
name=joe
到['name','joe']
。
如果第一个(name
)等于variable
,则返回第二个joe
答案 1 :(得分:0)
您需要的所有内容都放在document.location
对象中。
答案 2 :(得分:0)
如同他们的例子:Get url parameter jquery Or How to Get Query String Values In js
var tech = getUrlParameter('technology');
var blog = getUrlParameter('blog');