webForumDet fria alternativet
Logga in / Bli medlem

Värde till popup

JavaScript

3 svar · 227 visningar · startad av Lembit

Medlem sedan jan. 200417 inlägg
Trådstart#1

Halloj'

Hur hämtar jag ett värde från parentwindow till en popup?

En enkel fråga men det har nog brunnit i hytten hos mig här.

Tackar

Medlem sedan aug. 20039 340 inlägg
#2

I enklaste möjliga form (Utan att kolla om moderfönstret är stängt)

 
parent.html

foo = 25;
window.open("popup.html","_blank")

______

popup.html

alert(window.opener.window.eval("foo") );
Medlem sedan jan. 200417 inlägg
#3

Får då "premission is denied"

Något mer tips.....=)

Medlem sedan aug. 20039 340 inlägg
#4

Ok, det beror på att popupen och moder-fönstret hör till olika domäner (t ex https://www.foo.com och https://www.bar.com) alt. att den ena sidan ligger på din dator och den andra på nätet.
Annars kan du ju använda dig av qeurystrings. Denna lösning gör ju dock att popupen laddas om för varje värde som skickas...

Edit: Tryckfelsnisse och andra redigeringar.

 
Modern:
<script type="text/javascript">
// Edit: detta forum lägger till ett mellanslag till about:blank. Ta bort!

function sendValue(valuetosend){
  document.forms["sendform"].elements["sendvalue"].value=valuetosend;
  document.forms["sendform"].submit();
}

</script>

<form name="sendform" target="winname" action="popup.html" method="get">
<input type="hidden" name="sendvalue">
</form>

<a href="javascript:void(sendValue('Hello world'))">Skicka något</a>

Popupen:
<script type="text/javascript" src="parsequery.js"></script>
<!-- Adress till denna fil nedan -->
<script type="text/javascript">
var p=parseQuery();
// Notis: document.write får INTE köras EFTER att sidan laddas.
document.write(p["sendvalue"]);
</script>

http://www2.hemsida.net/dtd/page2/parsequery.js
(Högerklick, spara som)

256 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)