2012-10-17 4 views
15

iframe이 포함 된 페이지에서 매개 변수를 가져와 iframesrc에 매개 변수를 추가하고 싶습니다.iframe에 URL 매개 변수 전달

예 :

위 PAGE--

<iframe id="myiframe" name="myiframe" src="prefcontent.aspx" frameborder="0" 
width="100%" height="800"></iframe> 

IN IFRAME--

http://www.example.com/pref.html?c=%433r3jutlut9se%23&e=test%40example.com

IFRAME을 포함하는 페이지가 여기에 내가 '많은 것들 중 하나입니다 내가 이론적으로 일할 것이라고 생각했지만 시도가 없었지만 그것으로 UCK :

<script language="javascript"> 
$(function() { 

    var loc = window.location.toString(), 
    params = loc.split('?')[1], 
    params2 = loc.split('&')[2], 
    iframe = $('#myiframe'); 

    console.log(params); 

    iframe.src = iframe.src + '?' + params + '&' + params2; 


}); 
</script> 
+0

iframe 소스에 현재 페이지와 동일한 쿼리 문자열을 추가하기 만하면됩니까? – adeneo

+0

예, 부모 페이지 URL에서 동일한 매개 변수를 가져 와서 iframe src에 추가하려고합니다. Lededje의 답변은 매력처럼 작동합니다! 도와 주셔서 감사합니다 Adeneo! – Nostalgia80

답변

12

당신이 jQuery를 사용하여 당신이 코드를 제거 할 수 있습니다 경우 :

$(function() { 
    var search = window.location.search; 
    $("#myiframe").attr("src", $("#myiframe").attr("src")+search); 
}); 

사용 window.location.search; 그것은 URL의 끝에있는 해시 태그를 잘라내어 원시 코드이므로 훨씬 빠릅니다.

그런 다음 jQuery 선택기를 사용하여 iframe에서 src의 속성을 찾아서 바꿉니다. 현재 src와이 페이지에서 가져온 검색이 더해집니다.

희망이 도움이됩니다.

+1

예 !!!!! 정말 많이 lededje 감사합니다! 나는 오랫동안 이것에 붙어 있었다. 이것은 대단히 도움이됩니다. :) – Nostalgia80

+0

이것은 훌륭한 해결책입니다! 또한 하나의 매개 변수를 인코딩하고 decodeURIComponent를 사용하는 변형이 있습니다 (http://stackoverflow.com/a/19553782/684229 참조). – TMS

8
<script language="javascript"> 
    var iframe = document.getElementById('myiframe'); 
     iframe.src = iframe.src + window.location.search; 
</script>