js는 iframe과 src에서 매개변수를 어떻게 가져오나요?
/*
대상 iframe에 포함된 매개변수 가져오기?src
@param?iframeId?-?대상 iframe의 ID
@return?Object?매개변수 이름 및 값 쌍, {매개변수 이름: 매개변수 값,...}
*/
function?getIframeParams(iframeId)?{
var?regexpParam?=?/\?([\w\d%]+)=([\w\d%]*)&?/g;?//매개변수 구분을 위한 정규식
var?targetEle?=?document.getElementById(iframeId);
var?paramMap?=?null;
if(!!targetEle)?{
var?url?=?targetEle.src;?//iframe의 URL 가져오기
var?ret;
paramMap?=?{}; //결과 세트 초기화
//URL의 매개변수를 통해 루프를 시작하고 이를 키-값 쌍의 형태로 결과 세트에 넣습니다.
while((ret ?=?regexpParam.exec(url))?!= ?null)?{
//ret[1]은 매개변수 이름이고, ret[2]는 매개변수 값입니다.
paramMap[ret[1]]?=?ret[2] ;
}
}
return?paramMap;?//결과 세트 반환
}
사용법:
iframe이 다음과 같다고 가정합니다.
/ /매개변수 이름 및 값 쌍 컬렉션 가져오기
var?paramMap?=?getIframeParams('test');
//paramMap의 구조는 다음과 같습니다: {'paramA':'a ',?'paramB':'b'}
alert(paramMap.paramA);?/ /paramA의 매개변수 값 가져오기