Avatar billede tuba Nybegynder
17. maj 2002 - 12:50 Der er 14 kommentarer og
1 løsning

tage value fra dokument til popupvindues input felt

Jeg ønsker at bruge en værdi fra et dokument som åbner et popupvindue og sætter selvsammen værdi som valuen i et inputfelt (altså i popupvinduet)

jeg har prøvet mig frem med følgende, men kan ikke rigtig få det til at fungere.

siden med scriptet der åbner popupvindue

<script language="JavaScript">
<!-- hide me from older browsers
newWindow = new Object;
newWindow.closed = true;
function getList()
{
      if (!newWindow.closed) { 
        newWindow.close();
      }
      newWindow = window.open("listningBilleder.asp", "","resizable=no,width=400,height=300");
      newWindow.document.formList.dropdownType.value = test1;
      newWindow.document.close();
      newWindow.focus();
  }
// show me -->
</script>

formen i popupvindue

<form action="" name="formList" id="formList">
<input type="text" name="dropdownType" id="dropdownType" value="">
</form>
Avatar billede jakoba Nybegynder
17. maj 2002 - 13:07 #1
din linie
      newWindow = window.open("listningBilleder.asp", "","resizable=no,width=400,height=300");
sætter en åbning af vinduet igang. den venter ikke på at filen 'listningBilleder.asp' skal blive lodet ind i det vindue, men fortsætter straks med at udføre linien:
      newWindow.document.formList.dropdownType.value = test1;
og det går galt for den formular og det formfelt findes jo slet ikke før file er loadet ind i billedet.

del evt din funktion op i to:

function getList()
{
      if (!newWindow.closed) {
        newWindow.close();
      }
      newWindow = window.open("listningBilleder.asp", "","resizable=no,width=400,height=300");
      newWindow.onload = getListContinue;
// ikke testet det sikreste er at lægge en onload i filen
// listningBilleder.asp 's <body kommando.
// <body ... onload="opener.getListContinue
();">
}

function getListContinue() {
      newWindow.document.formList.dropdownType.value = test1;
      newWindow.document.close(); // denne linie er vist overflødig.
      newWindow.focus();
  }

mvh JakobA
Avatar billede jakoba Nybegynder
17. maj 2002 - 13:08 #2
Ups. der kom et uønsket linieskift.
// <body ... onload="opener.getListContinue();">
Avatar billede tuba Nybegynder
17. maj 2002 - 13:26 #3
det gav lidt klarhed. tak for forklaringen, det virker nu.
Avatar billede tuba Nybegynder
17. maj 2002 - 13:27 #4
du skulle selvfølgelige have point. du må lige oprette et svar
Avatar billede jakoba Nybegynder
17. maj 2002 - 13:33 #5
takker :)
Avatar billede tuba Nybegynder
17. maj 2002 - 14:45 #6
hvad nu hvis "valuen" af inputboksen skal være afhængig af det valg man har i hovedvinduet ? dvs. at der kommer en eller anden variabel ind i getList() eks. 'finn' som skal vidergives til newWindow.document.formList.dropdownType.value = 'finn' ;
Avatar billede jakoba Nybegynder
17. maj 2002 - 15:31 #7
Jeg er lidt udsikker på hvad du ønsker

Skal værdien taget FRA en dropdown select boks i det oprindelige vindue?

Skal værdien overføres TIL en dropdown select boks i popopvinduet. Hvis ja skal der så ledes efter den værdie i den dropdown select's options og selecten sættes så den er valgt. Skal den tilføjes hvis den ikke findes.

prøv at gøre det helt klart hvad der skal gøres.
Avatar billede tuba Nybegynder
17. maj 2002 - 15:39 #8
mit link fra hoveddokumentet onClick="getList('var');"
getList() åbner et popupvindue og 'var' skal så være lig med "valuen" af mit inputfeltet som hedder "dropdownType" i formen "formList" i popupvinduet
Avatar billede jakoba Nybegynder
17. maj 2002 - 15:47 #9
hvis du aktiverer funktionen med
      onClick="getList('var');"
vil funktionen getList få en parameter som skal med i definitionen:
    function getList( paranvar )
men paremetervariabelen paramvar vil ALTID være en streng der indeholder bogstaverne 'v', 'a' og 'r' i den rækkefølge.

jeg er ret sikke på det ikke er det du mener.

Har du evt mulighed for at lægge siden ud på nettet så jeg kan kikke på den?
Avatar billede jakoba Nybegynder
17. maj 2002 - 15:53 #10
Ahh... der dæmrer noget. der skal fluttes en værdi fra popopvinduet tilbage til det vindue der åbnede det.

i popopvinduet kan du adressere dig hen i det oprindelige vindue med opener.

fx (i popopvinduet):
    opener.window['returverdi') = 245;

vil oprette en variabel ved navn returverdi i det oprindelige vindue og give den variabel værdien 245.

noget i den retning, ikke?
Avatar billede jakoba Nybegynder
17. maj 2002 - 15:54 #11
Ups. det skal være ] og ikke ) i linien:
    opener.window['returverdi'] = 245;
Avatar billede tuba Nybegynder
17. maj 2002 - 16:02 #12
http://www.bayone.dk/javascript/hoveddokument.html

-måske det her giver mere mening...
Avatar billede jakoba Nybegynder
17. maj 2002 - 16:26 #13
Meget mere mening. det er sådanher det skal være, ikke?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>hoveddokument</title>

<script language="JavaScript">
newWindow = new Object;
newWindow.closed = true;

var huskevar;        // tilføjet linie

function getList( paramstreng ){
    huskevar = paramstreng;    // tilføjet linie
    if (!newWindow.closed) {
        newWindow.close();
    }
      newWindow = window.open("listningBilleder.html", "","resizable=no,width=450,height=330");
}

function getListContinue() {  // fjernet 2 linier her
      newWindow.document.formList.dropdownType.value = huskevar; //  ændret linie
      newWindow.focus();

}
</script>

</head>

<body>

<a href="#" class="popupLink" onClick="getList('det_her_skal_sta_i_inputfeltet'); return false;">popup Vindue</a>

<br><br>
'det_her_skal_sta_i_inputfeltet'

</body>
</html>
Avatar billede tuba Nybegynder
17. maj 2002 - 16:39 #14
jeps, præcis, tak for hjælpen. hvis du vil have point må du lade mig vide
Avatar billede jakoba Nybegynder
17. maj 2002 - 16:41 #15
det har jeg jo allerde fået.
men selv tak
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester