JavaScript에서 "GET"요청 매개 변수를 얻는 방법은 무엇입니까?
JavaScript의 요청에서 "GET"변수를 얻는 방법은 무엇입니까?
jQuery 또는 YUI! 이 기능이 내장되어 있습니까?
모든 데이터는
window.location.search
예를 들어 문자열을 구문 분석해야합니다.
function get(name){
if(name=(new RegExp('[?&]'+encodeURIComponent(name)+'=([^&]*)')).exec(location.search))
return decodeURIComponent(name[1]);
}
GET 변수 이름을 매개 변수로 사용하여 함수를 호출하십시오.
get('foo');
이 함수는 변수 값을 반환하거나 변수에 값이 없거나 존재하지 않으면 정의되지 않습니다.
다음 jquery.url
과 같이 사용할 수 있습니다 .
var xyz = jQuery.url.param("param_in_url");
업데이트 된 소스 : https://github.com/allmarkedup/jQuery-URL-Parser
모든 요청을 포함하는 객체를 원한다면 내 2 센트를 넣어
function getRequests() {
var s1 = location.search.substring(1, location.search.length).split('&'),
r = {}, s2, i;
for (i = 0; i < s1.length; i += 1) {
s2 = s1[i].split('=');
r[decodeURIComponent(s2[0]).toLowerCase()] = decodeURIComponent(s2[1]);
}
return r;
};
var QueryString = getRequests();
//if url === "index.html?test1=t1&test2=t2&test3=t3"
console.log(QueryString["test1"]); //logs t1
console.log(QueryString["test2"]); //logs t2
console.log(QueryString["test3"]); //logs t3
각 get 매개 변수의 키는 소문자로 설정됩니다. 그래서 헬퍼 기능을 만들었습니다. 이제 대소 문자를 구분하지 않습니다.
function Request(name){
return QueryString[name.toLowerCase()];
}
아래 코드를 시도하면 url에서 GET 매개 변수를 얻는 데 도움이됩니다. 상세 사항은.
var url_string = window.location.href; // www.test.com?filename=test
var url = new URL(url_string);
var paramValue = url.searchParams.get("filename");
alert(paramValue)
URL을 사용하여 GET 변수를 얻을 수 있습니다. 특히, window.location.search
'?'뒤에 (포함) 모든 것을 제공합니다. window.location에 대한 자세한 내용은 여기에서 확인할 수 있습니다 .
오늘은 내가 조금과 함께 다음을 넣어 있도록 연관 배열로 페이지의 요청 매개 변수를 얻을 필요 도움 에서 내 친구 . 또한 =
as 없이 매개 변수를 처리합니다 true
.
예를 들어 :
// URL: http://www.example.com/test.php?abc=123&def&xyz=&something%20else
var _GET = (function() {
var _get = {};
var re = /[?&]([^=&]+)(=?)([^&]*)/g;
while (m = re.exec(location.search))
_get[decodeURIComponent(m[1])] = (m[2] == '=' ? decodeURIComponent(m[3]) : true);
return _get;
})();
console.log(_GET);
> Object {abc: "123", def: true, xyz: "", something else: true}
console.log(_GET['something else']);
> true
console.log(_GET.abc);
> 123
현재 페이지의 URL을 구문 분석하여 GET 매개 변수를 얻을 수 있습니다. URL은를 사용하여 찾을 수 있습니다 location.href
.
이미 jquery를 사용하고 있다면이를 처리하는 jquery 플러그인이 있습니다.
http://plugins.jquery.com/project/query-object
지도 축소 솔루션 :
var urlParams = location.search.split(/[?&]/).slice(1).map(function(paramPair) {
return paramPair.split(/=(.+)?/).slice(0, 2);
}).reduce(function (obj, pairArray) {
obj[pairArray[0]] = pairArray[1];
return obj;
}, {});
용법:
For url: http://example.com?one=1&two=2
console.log(urlParams.one) // 1
console.log(urlParams.two) // 2
The function here returns the parameter by name. With tiny changes you will be able to return base url, parameter or anchor.
function getUrlParameter(name) {
var urlOld = window.location.href.split('?');
urlOld[1] = urlOld[1] || '';
var urlBase = urlOld[0];
var urlQuery = urlOld[1].split('#');
urlQuery[1] = urlQuery[1] || '';
var parametersString = urlQuery[0].split('&');
if (parametersString.length === 1 && parametersString[0] === '') {
parametersString = [];
}
// console.log(parametersString);
var anchor = urlQuery[1] || '';
var urlParameters = {};
jQuery.each(parametersString, function (idx, parameterString) {
paramName = parameterString.split('=')[0];
paramValue = parameterString.split('=')[1];
urlParameters[paramName] = paramValue;
});
return urlParameters[name];
}
Works for me in
url: http://localhost:8080/#/?access_token=111
function get(name){
const parts = window.location.href.split('?');
if (parts.length > 1) {
name = encodeURIComponent(name);
const params = parts[1].split('&');
const found = params.filter(el => (el.split('=')[0] === name) && el);
if (found.length) return decodeURIComponent(found[0].split('=')[1]);
}
}
참고URL : https://stackoverflow.com/questions/831030/how-to-get-get-request-parameters-in-javascript
'programing' 카테고리의 다른 글
Go의 ToString () 함수 (0) | 2020.10.14 |
---|---|
Node.js를 사용하여 전체 디렉토리를 압축해야합니다. (0) | 2020.10.14 |
SQLAlchemy가 db로 보낸 SQL 명령 디버깅 (표시) (0) | 2020.10.13 |
Symfony2 및 date_default_timezone_get ()-시스템의 시간대 설정에 의존하는 것은 안전하지 않습니다. (0) | 2020.10.13 |
텍스트 상자에서 onchange () 이벤트로 이전 값을 얻는 방법 (0) | 2020.10.13 |