02. februar 2001 - 10:31Der er
9 kommentarer og 1 løsning
Dynamiske indsætte OPTION i SELECT field
Jeg har følgende kode, der i IE5 kan lave en side, og efterfølgende indsætte en option i select box. Det virker også i NS4.7, men ikke i NS6?
Hvad har jeg gjort forkert?
<html> <head> <title>Test</title> <script language=\"JavaScript\"> <!-- tekster=new Array(\"Option 1\",\"Option 2\",\"Option 3\") function hentOptions() { for (i=0; i<tekster.length; i++) { o = new Option() if (i==0) o.selected=true; o.value=i o.text=tekster[i] document.frm.model.options[i]=o } } // --> </script> </head> <body ONLOAD=\"java script:hentOptions()\"> <!-- Følgende select har forkert størrelse i NS4.7 Den er OK i IE5.5 Den er tom(?) i NS6 --> <form name=\"frm\"> <select name=\"model\"> </select> </form> </body> </html>
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jo nogen gange SKAL der faktisk være ; for at fortolkeren kan hitte ud af det. Andre gange er det blot en hjælp til den der prøver at læse og forstå koden. Så tag og brug dem, også selvom de ikke \"behøver\" at være der.
Dit script må på en eller anden måde hænge sammen med et <select element i en <form du gør det ved at sige:
document.frm.model.options[i]=o;
i den nye DOM (Document Object Model) gør du det med:
var minFrm = document.getElementByID(\"frm\"); minFrm.model.options[i]=o;
her kan du læse alt om DOM. Jeg håber stadig på at finde nogen mere læsevenlige sider om det :)
Synes godt om
Slettet bruger
02. februar 2001 - 17:25#7
jakoba-> Tak for det.
Jeg venter med at acceptere svar, indtil der er nogen, der har fortalt, hvad jeg skal gøre for at indkapsle DOM-browsere og hvad jeg skal gøre for at få det til at køre på NS4.7
Nu skulle den være OK i Explorer og NS4.7- NS behøvede blot en width i select-taggen fordi netscape ikke resizer elementer dynamisk efter størrelsen af deres indhold.
Virker måske i NS6. Jeg har ikke NS6 så du må selv teste.
var tekster = new Array(\"Option 1\",\"Option 2\",\"Option 3\") function hentOptions() { var mf = o = null; // to lokale pointere if (document.getElementByID) mf = document.getElementsByID(\"frm\") // DOM else mf = document.forms.frm; // gammel Object Model for (i=0; i<tekster.length; i++) { o = mf.model.options[i] = new Option(); o.value=i; o.text=tekster[i]; }; mf.model.options[0].selected=true;
}; //end hentOptions()
// --> </script> </head> <body ONLOAD=\"java script:hentOptions()\"> <!-- Følgende select har forkert størrelse i NS4.7 Den er OK i IE5.5 Den er tom(?) i NS6 --> <form name=\"frm\"> <select name=\"model\" width=40> </select> </form> </body> </html>
Du bliver nødt til at lave en option med en masse nobrake-spaces for at få det til at funke i NS4+. /mvh </bole>
Synes godt om
Slettet bruger
04. februar 2001 - 16:47#10
jakoba-> Tak for det gode svar. ole-> Jakoba var først og fik derfor point.
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.