04. juni 2008 - 10:59Der er
15 kommentarer og 1 løsning
Opener.location
Hej
jeg har et problem med at videreføre en værdi fra en popup til den underliggende side.
Jeg har denne funktion som bliver udført når man trykker på en knap på popuppen.
<script type="text/javascript">
function overfor() { var long_opener=opener.document.getElementById('longitude').value; var lat_opener=opener.document.getElementById('longitude').value; var long_this=document.getElementById("lati").innerHTML; var lat_this=document.getElementById("lng").innerHTML; long_opener=long_this; lat_opener=lat_this; alert(long_opener+" + "+lat_opener);
} </script>
Når jeg alerter det ud kommer værdierne med, ligemeget hvilken en af dem det er.
Hvordan får jeg gjordt således at værdienerne fra popup siden bliver lagt over til den underliggende side?
Det du gør i din kode, Jan, er at tage en kopi af vædien i feltet i opener-documentet, og så ændrer du i den kopi.
Du skal nok, som w13 skitserer (men har du ikke byttet om lang... og lat...?):
function overfor() { long_opener=opener.document.getElementById('longitude').value=document.getElementById("lati").innerHTML;; opener.document.getElementById('longitude').value=document.getElementById("lng").innerHTML;
function overfor() { opener.document.getElementById('longitude').value=document.getElementById("lati").innerHTML;; opener.document.getElementById('longitude').value=document.getElementById("lng").innerHTML;
Du prøvede at hive referencen til document.getElementById('longitude').value ned i en variable, men du fik kun værdien af dens value.
Uden value havde det virket. Så skulle value bare på, når du skulle overføre:
<script type="text/javascript"> function overfor(){ var long_opener=opener.document.getElementById('longitude'); var lat_opener=opener.document.getElementById('longitude'); var long_this=document.getElementById("lati").innerHTML; var lat_this=document.getElementById("lng").innerHTML; long_opener.value=long_this; lat_opener.value=lat_this; } </script>
>w13 04/06-2008 14:06:04 - nej, jeg mener "longitude" begge steder, for det var hvad spørgeren skrev. Men jeg regner med at spørgeren nok ville have haft skrevet det du rettede det til ;)
Det vil jeg sandelig da ikke håbe! Hvis det derimod er af hensyn til god kodestil, overholdelse af gældende standarder, samt forsøg på ikke at skyde sig selv i foden med uhensigtsmæssigheder, er jeg helt enig ;o)
Nej, det er ikke særlig pudsigt ... det er vist lige efter bogen ;o)
Et no-breaking space ( ) er ikke et alm. mellemrumstegn. Et almindeligt mellemrum hedder \u0020 i Unicode. Et no-breaking space hedder \u00a0
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.