Используя javascript, есть ли способ получить текущие параметры URL окна и сохранить их в переменной?
Я знаю о window.location.host и window.location.pathname, но есть ли способ извлечь дополнительные параметры ссылки, как эта?
http://www.example.com/test?u=123
Я хотел бы получить динамическую переменную, равную "u123", но без двойных кавычек.
Спасибо!
3 ответа
Решение
var oGetVars = {};
if (window.location.search.length > 1) {
for (var aItKey, nKeyId = 0, aCouples = window.location.search.substr(1).split("&"); nKeyId < aCouples.length; nKeyId++) {
aItKey = aCouples[nKeyId].split("=");
oGetVars[unescape(aItKey[0])] = aItKey.length > 1 ? unescape(aItKey[1]) : "";
}
}
// alert(oGetVars.yourVar);
Для базового примера получения всех параметров страницы в полезную переменную попробуйте это:
var pageParams = {};
if(location.search != ''){
var searchStr = location.search;
searchStr = searchStr.substr(1);
var searchStrArr = searchStr.split('&');
var pageParamPair, pageParamKey, pageParamValue;
for(var i=0;i<searchStrArr.length;i++){
pageParamPair = searchStrArr[i].split('=');
pageParamKey = pageParamPair[0];
pageParamValue = pageParamPair[1];
pageParams[pageParamKey] = pageParamValue;
}
}
Таким образом, в вашем случае pageParams['u'] = "123"