目前,以下代码采用 href 并排列所有稍后要调用的参数:
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(
/[?&]+([^=&]+)=([^&]*)/gi,
function (m, key, value) {
vars[key] = value;
});
return vars;
}
这适用于在 url 中设置了类似 parameter=value 的参数的 href。我在网上找到了这个函数,并不太了解很多 javascript,但需要对其进行编辑,以便 = 不是参数和值之间的分割因子,而是 %3A。例如,由于我正在处理的网站上的格式不同,因此参数 %3Avalue 。我不确定这个函数是如何工作的,所以我很难编辑它。谢谢您的帮助。
如果您需要解码格式的多个项目,您应该首先尝试将 decodeURIComponent 应用于 href 字符串。如果您只想对 %3A 进行解码,那么首先对其进行解码可能是最简单的(这样字符串看起来就像使用了=
符号)。
function getUrlVars() {
var vars = {};
var partsWithEqSign = window.location.href.replace(/%3A/g, "=");
var parts = partsWithEqSign.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
vars[key] = value;
});
return vars;
}
顺便说一句,所使用的代码涉及正则表达式,这是 JavaScript 中最困难的概念之一,但一旦您学习它们就非常有用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句