2012-10-17 12 views
15

Chciałbym pobrać parametry ze strony zawierającej iframe i dołączyć parametry do src z iframe.Przesyłanie parametrów URL do iframe

Przykład:

strona zawierająca IFRAME--

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

IFRAME w powyższym PAGE--

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

Oto jeden z wielu rzeczy” próbowałem, co moim zdaniem działałoby w teorii, ale ja nie miałem l UCK z nim:

<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

Czy chodzi po prostu dodać ten sam ciągu kwerendy jako bieżącej strony do źródła iframe? – adeneo

+0

Tak, właśnie chciałem pobrać te same parametry z adresu URL strony nadrzędnej i dodać je do src iframe. Odpowiedź Lededje poniżej działa jak urok! Dziękujemy za pomoc Adeneo! – Nostalgia80

Odpowiedz

12

jeśli jQuery możesz rozebrać swój kod up:

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

Zastosowanie window.location.search; ponieważ odetnie znacznik hash na końcu adresu URL i jest o wiele szybszy, ponieważ jest to kod natywny.

Następnie za pomocą selektorów jQuery znaleźć i zastąpić atrybut src w iframe, z jego obecny src plus wyszukiwania nabyte od tej strony.

Mam nadzieję, że to pomoże.

+1

TAK !!!!! Dziękuję bardzo mocno lededje! Utknąłem na tym od dawna. To pomaga niezmiernie. :) – Nostalgia80

+0

To świetne rozwiązanie! Istnieje również wariant do kodowania wszystkich parametrów w jednym i użycia decodeURIComponent, zobacz http://stackoverflow.com/a/19553782/684229 – TMS

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