所以,这是主代码,它检查字符串的当前页面的URL?a = 然后将变量 ee_roomname 设置为之后的任何内容。
<script type="text/javascript">
var ee_roomname = unescape(location.href.substring(location.href.lastIndexOf("?a=")+1))
if(ee_roomname.indexOf("?") != -1) ee_roomname = "";
</script>
但是,如果我想添加更多变量,可能在此值之后。对于前者这是一个可能的网址:
因此,变量 ee_roomname 将设置为 hijk
现在,如果我们添加更多标签,它将如下所示:
现在 ee_roomname 将被设置为 hijk&amp; b = lmno&amp; c = pqrs ,这不是我想要的。
我希望代码只跟踪URL中的 a 变量/参数值。
需要改变什么以及如何使其发挥作用? 也许提供我可以使用的代码。 (不是“做这个和这个”的忠实粉丝等)
答案 0 :(得分:4)
这是一个检索url参数的函数
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
vars[key] = value;
});
return vars;
}
如何检索javascript中的url参数
var first = getUrlVars()["id"];
var second = getUrlVars()["page"];
alert(first);
alert(second);
奖励:如果你将字符串拆分为'?'并采取上半部分,这将给你“纯粹的”绝对网址。
答案 1 :(得分:2)
回答第一个问题,您也可以尝试:
<script>
var query = window.location.search.substring(1);
var getv = query.split("&");
var pair = new Array();
for (var i=0; i < getv.length; i++) {
pair[i] = getv[i].split("=");
}
</script>
pair是所有get变量和值的数组,如: [[“h”,“1”],[“g”,“2”]]如果?h = 1&amp; g = 2
希望有所帮助。答案 2 :(得分:1)
尝试使用此URL Parsing library in JavaScript解析整个网址。