Это функция JavaScript, которую я использую для получения параметров URL. Он вернет ассоциативный массив значений ... вы также можете запросить определенное значение c.
// demo function
console.clear();
document.querySelector(".btn").addEventListener("click", function () {
console.log('username:', getUrlParams("username"));
console.log('all-params', getUrlParams());
});
// URL parameter function
getUrlParams = function (key) {
var a = [],
b = window.location.href
.slice(window.location.href.indexOf("?") + 1)
.split("&");
b.every(function (c) {
var p = c.split("="),
d = {};
if (p.length === 2) {
d[p[0]] = p[1];
if (key && key === p[0]) {
a = p[1];
return false;
}
a.push(d);
}
});
return a.length > 0 ? (key && a[0] === key ? a[1] : a) : undefined;
};
<button class="btn">Click me</button>
[РЕДАКТИРОВАТЬ] В этом примере кода возвращается «undefined» для обоих вызовов, поскольку в URL нет параметров URL. Вместо этого попробуйте этот CodePen (посмотрите на веб-консоль): https://codepen.io/cjboco/pen/MWwZbKO?editors=1010
[EDIT # 2] Вот ожидаемые результаты для вашего примера:
Call: getURLParams("username")
Result: "User1"
Call: getURLParams()
Result: [{"username","User1"}]