【发布时间】:2017-07-01 19:37:46
【问题描述】:
我需要从 URL 中获取两个参数,它们可能包含 & 符号或空格。作为搜索字符串的一部分。
示例:mysite.com?param1=Bower & Wilkins?param2=Speakers
我知道 Bower & Wilkins 包含获取第二个参数的明显符号,但我可以用其他东西替换它吗?
在尝试这个函数的时候,可以很方便的返回单个参数:
URL: mysite.com?param1=Bower%20&%20Wilkins
function getQueryStringValue(key) {
return decodeURIComponent(window.location.search.replace(new RegExp("^(?:.*[&\\?]" + encodeURIComponent(key).replace(/[\.\+\*]/g, "\\$&") + "(?:\\=([^]*))?)?.*$", "i"), "$1"));
}
var param1 = getQueryStringValue("param1"); // Bower & Wilkins
如何获取第二个参数以及如何构造 URL。我可以使用除 & 之外的其他符号来列出第二个参数吗?
我需要什么:
var param1 = getQueryStringValue("param1"); // Bower & Wilkins
var param2 = getQueryStringValue("param2"); // Speakers
【问题讨论】:
-
看起来this 是一个类似的问题。
标签: javascript url-parameters uriencoding