Avatar billede emileej Nybegynder
22. marts 2001 - 10:51 Der er 27 kommentarer og
3 løsninger

Hvorfor \"understøtter objektet ikke denne egenskab eller metode\"?

Hvorfor \"understøtter objektet ikke denne egenskab eller metode\"?

    top.input.document.ChatForm.skriv_til.clear();
    bruger = new Option(\"emil\",\"emil\");
    top.input.document.ChatForm.skriv_til.add(bruger);

E-)mil
Avatar billede emileej Nybegynder
22. marts 2001 - 11:33 #1
Avatar billede emileej Nybegynder
22. marts 2001 - 11:33 #2
Log ind på chatten for, at teste det...
Avatar billede emileej Nybegynder
22. marts 2001 - 11:33 #3
Scriptet ligger i output framen...
Avatar billede olebole Juniormester
22. marts 2001 - 12:11 #4
<ole>
Jeg har prøvet at komme ind, men det lykkedes ikke at komme til at se koden :(
Hvad er \'top.input.document.ChatForm.skriv_til\'?
/mvh
</bole>
Avatar billede emileej Nybegynder
22. marts 2001 - 12:17 #5
Det er en select liste - jeg er på chatten nu - log ind igen hva?! :)
Avatar billede olebole Juniormester
22. marts 2001 - 21:07 #6
Ahaaaa.....prøv skrive:
  top.input.document.ChatForm.skriv_til.selectedIndex = 0;
:)
Avatar billede emileej Nybegynder
22. marts 2001 - 21:23 #7
Indholdet i listen skal slettes, og jeg skal tilføje tre emner - den kode du har skrever, fravælger den ikke bare eventuelle valgte emner i listen?

E-)mil
Avatar billede jakoba Nybegynder
22. marts 2001 - 21:24 #8
Såvidt jeg kan se er
  top.input.document.ChatForm
den første af de to formaularer du har i bundrammen. og
  top.input.document.ChatForm.skriv_til
er selecten i den form.


      <form name=\"ChatForm\" action=\"http://eej.dk/chat/input.php\" method=\"post\" target=\"_self\">
      <input type=\"hidden\" value=\"skriv\" name=\"opgave\">Besked:<br>
      <input type=\"text\" name=\"tekst\" size=\"40\" onclick=\"valgt=true;\">
      <input type=\"submit\" name=\"send\" value=\"Skriv\"><br>
      <select name=\"skriv_til\" size=\"2\" multiple>
        <option value=\"false\">Loader...</option>
      </select><input type=\"checkbox\" value=\"jepz\" name=\"pop_op\" style=\"border: 0px\">Pop op ved besked
      </form>

select objektet har såvidt jeg ved kun 3 metoder:

Method        Description
blur()        Removes focus from the selection list.
focus()        Gives focus to the selection list.
handleEvent()  Invokes the handler for the specified event.
dvs, ingen clear() funktion og ingen add() funktion.

Så jeg ville skrive din kode om til:

    top.input.document.ChatForm.tekst.value = \"\";
                // det er det indtastede du vil fjerne ikke

    bruger = new Option(\"emil\",\"emil\");
    sel = top.input.document.ChatForm.skriv_til;  // bare for at undgå skrivekrampe :)
    sel.options[sel.options.length] = bruger; 
                // for at tilføje ny option.

mvh JakobA
Avatar billede olebole Juniormester
22. marts 2001 - 21:27 #9
For også at virke i NS4.x, skal du dog nok skrive:

    sel = top.input.document.ChatForm.skriv_til;
    sel.selectedIndex = 0;
    sel.length++;
    sel.options[sel.length-1].text = \"emil\";
    sel.options[sel.length-1].value = \"emil\";

Du får godt nok en scrollbar på din select, men den ny option er der - uden JS-fejl :)
/mvh
Avatar billede ldanielsen Nybegynder
22. marts 2001 - 21:58 #10
Hvis du vil tømme en select:

sel = top.input.document.ChatForm.skriv_til;  // bare for at undgå skrivekrampe :)

while (sel.options.length > 0){
  sel.options[0] = null
  }
Avatar billede emileej Nybegynder
22. marts 2001 - 22:48 #11
Du tar den enes svar - mixer det lidt med den andens, tilsætter lidt fra den tredies - og viola! Alt fungerer (Bortset fra at jeg ikke kan få adgang til min mysql base - men det er en anden historie...) :)

>>ldanielsen
Skynd dig dog at svar mand! ;)

Jeg har liiige sat point premien op :o)

E-)mil
Avatar billede olebole Juniormester
22. marts 2001 - 23:14 #12
I seeeeeee....du ville slette alle options! Jeg troede bare du ville nulstille den og tilføje en option  *LoooL*
Avatar billede olebole Juniormester
22. marts 2001 - 23:26 #13
Idanielsen >> ...og, hvordan fylder man så en ny option på? Den bliver heller ikke tømt...du har bare et antal tomme options i din dropdown. Nej, så er det her vist bedre:

    sel = top.input.document.ChatForm.skriv_til;
    sel.length = 1;
    sel.options[0].text = \"emil\";
    sel.options[0].value = \"emil\";
    sel.options[0].selected = true;

/mvh
Avatar billede emileej Nybegynder
23. marts 2001 - 08:23 #14
>>olebole

Jeg ved ikke med din browser, men med den nye kombination BLIVER listen slettet, og mine options tilføjet, som forventet - du ser måske noget andet i din browser?

E-)mil
Avatar billede emileej Nybegynder
23. marts 2001 - 08:33 #15
Hvordan får jeg forresten fat i en variabel, defineret i an ande frame, og hvordan checker jeg, at den overhovedet er defineret?

E-)mil
Avatar billede olebole Juniormester
23. marts 2001 - 09:28 #16
if(parent.frameNavn.variabel) { bla = parent.frameNavn.variabel; }
/mvh
Avatar billede emileej Nybegynder
23. marts 2001 - 12:36 #17
Takker :)
Liiige det sidste spm. for mine 60 point:

Er flg. fuldstendigt volapyk? :

    if(top.output.document.location==\"load.html\"){
        top.output.document.location=\"output.php\";
    }

(Det har ikke den ønskede effekt)

Hvis LDanielsen ikke har svaret inden 13:30 - får jakoba og olebole pointene...

E-)mil
Avatar billede olebole Juniormester
23. marts 2001 - 12:42 #18
Læg en variabel i dit frameset\'s hoved - og sæt den til \'false\':
  var loaded = false;
I dokumentet, der loades i output, skriver du:
  <body onload=\"top.loaded=true;\" onunload=\"top.loaded=false;\">
Så kan du altid sige:
  if(top.loaded){
    top.output.document.location=\"output.php\";
  }

/mvh
Avatar billede olebole Juniormester
23. marts 2001 - 12:43 #19
...eller rettere:

  if(top.loaded){
    top.output.location=\"output.php\";
  }
Avatar billede emileej Nybegynder
23. marts 2001 - 12:47 #20
Hvad har
top.output.document.location==\"load.html\";
nu gjort?
Avatar billede olebole Juniormester
23. marts 2001 - 12:59 #21
Det er retteligt frame\'ens location, du ønsker at skifte...ikke dokumentets. Det er bare mere korrekt syntaks - det andet fungerer sikkert også, meeeeeen......  :))
Avatar billede ldanielsen Nybegynder
23. marts 2001 - 14:20 #22
Hej igen.

JEg ved godt at det ligner tomme options, men de er faktisk væk. Prøv selv at vælge dem. Browseren har bare svært ved at skrumpe den ind.

Det falder på plads så snart du fylder den op med:

sel.options[sel.options.length] = new Option(\"Emil,\"Emil\")
sel.options[sel.options.length] = new Option(\"Alfred,\"Alfred\")
Avatar billede emileej Nybegynder
23. marts 2001 - 15:41 #23
>>olebole

En misforståelse:
Jeg vil have, at framesettet loader en midlertidig side (load.html) i output framen, og at input framen - når den er loadet - checker om det er \"load.html\", der er i output framen, hvis det er, skifter den det til \"output.php\"... :)

E-)mil

Det med select listen funker fint :)
Avatar billede olebole Juniormester
23. marts 2001 - 15:53 #24
OK :)
Læg en variabel i dit frameset\'s hoved - og sæt den til \'false\':
  var loaded = false;
I dokumentet \'load.html\' skriver du:
  <body onload=\"top.loaded=true;\">
Så kan du altid sige:
  if(top.loaded){
    top.output.document.location=\"output.php\";
  }

Hvis det skal ske automatisk, skal du bare skrive sådan i \'load.html\':
<body onload=\"document.location=\'output.php\'\">
...intet andet :)

/mvh
Avatar billede emileej Nybegynder
23. marts 2001 - 15:59 #25
Du har stadigt misforstået mig :)
Det virker nu, og scriptet ligger i den nederste frame - hvis nogen har NS, ville jeg være glad for en test af chatten i denne :)

E-)mil
Avatar billede jakoba Nybegynder
23. marts 2001 - 23:28 #26
JavaScript Error:
http://eej.dk/chat/output.php, line 49:

array is not defined.
JavaScript Error:
http://eej.dk/chat/output.php, line 71:

array is not defined.

kunne det være du har skrevet  new Array()  med lille a

Din flash eller noget hev focus væk fra typein feltet midt i at jeg prøvede at skrive et login navn.
Avatar billede ldanielsen Nybegynder
23. marts 2001 - 23:35 #27
array er med stort!
Avatar billede ldanielsen Nybegynder
23. marts 2001 - 23:36 #28
Nåja, det er jo også det du siger jakoba
Avatar billede jakoba Nybegynder
24. marts 2001 - 00:07 #29
olebole >> TILLYKKE med de 20000. Det er da vist det højeste nogen har i nogen kategori.
Avatar billede olebole Juniormester
24. marts 2001 - 01:18 #30
Heeey...jubilæum! Det havde jeg ikke engang selv opdaget :)
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