我正在尝试从下面的url哈希中读取“source”参数和“group”参数。我不知道如何使用正则表达式并继续使用空白变量。
如何从
下面的url hash中读取“source”和“group”参数 console.log(urlObj.hash); // #source-items?source=1002&?group=Menu
var source = urlObj.hash.replace( /.*source=/, "");
答案 0 :(得分:0)
尝试
function getParameterByName(urlString, name)
{
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\?&]" + name + "=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(urlString);
if(results == null)
return "";
else
return decodeURIComponent(results[1].replace(/\+/g, " "));
}
并通过getParameterByName(urlObj.hash, "source");
答案 1 :(得分:0)
如果您在?
之后删除&
,则可以使用以下内容:
function parseParams() {
var params = window.location.hash.split('?')[1].split('&').map(function(item) {
return item.split('=');
});
var namedparams = {};
for (i=-1; param = params[++i]; ) {
namedparams[param[0]] = param[1];
}
return namedparams;
}
这是您使用此功能的方式:
var params = parseParams();
params.group; // the group parameter
params.source; // the source parameter