Avatar billede mikkel_breum Nybegynder
14. januar 2001 - 21:01 Der er 3 kommentarer og
1 løsning

to select elementer der påvirker hinanden

Hejsa,

hvordan kan jeg lave en for med to select menuer, således at valget i den ene menu påvirker den anden menu?

Jeg skal bruge det i to forskellige sammenhænge:

den ene:
select et vælger land, og herefter ændres indholdet af select to dynamisk så indholdet passer til landet (liste over kommuner fx.)

den anden:
select et rummer valgmulighederne 1,2og3
select to rummer de samme, og når jeg vælger option 2 i select menu et skal select menu 2 også skifte til at det er option 2 der er selected her. det skal ske dynamisk.
Avatar billede hatecaps Nybegynder
14. januar 2001 - 22:45 #1
ad 1. lav en onChange event på den første Select, i denne kalder du en funktion der kigger på hvad der er valgt i den første Select, og sætter derefter de forskellige værdier i den anden Select.

ad 2. Samme fremgangsmåde, dog sætter du i funktionen den valgte værdi i den anden Select til at være lig den valgte værdi i den første select.
Avatar billede olebole Juniormester
15. januar 2001 - 02:06 #2
<ole>

<html>
<head>
<script language=\"JavaScript\">
function kommune(t,v) {
    this.value = v;
    this.text = t;
}

var mySelect = new Array();
mySelect[0] = new Array();
mySelect[0][0] = new kommune(\"kommune_dk1\",\"dk1\");
mySelect[0][1] = new kommune(\"kommune_dk2\",\"dk2\");
mySelect[0][2] = new kommune(\"kommune_dk3\",\"dk3\");
mySelect[0][3] = new kommune(\"kommune_dk4\",\"dk4\");

mySelect[1] = new Array();
mySelect[1][0] = new kommune(\"kommune_se1\",\"se1\");
mySelect[1][1] = new kommune(\"kommune_se2\",\"se2\");
mySelect[1][2] = new kommune(\"kommune_se3\",\"se3\");
mySelect[1][3] = new kommune(\"kommune_se4\",\"se4\");
mySelect[1][4] = new kommune(\"kommune_se5\",\"se5\");
mySelect[1][5] = new kommune(\"kommune_se6\",\"se6\");

mySelect[2] = new Array();
mySelect[2][0] = new kommune(\"kommune_ty1\",\"ty1\");
mySelect[2][1] = new kommune(\"kommune_ty2\",\"ty2\");
mySelect[2][2] = new kommune(\"kommune_ty3\",\"ty3\");
mySelect[2][3] = new kommune(\"kommune_ty4\",\"ty4\");
mySelect[2][4] = new kommune(\"kommune_ty5\",\"ty5\");
mySelect[2][5] = new kommune(\"kommune_ty6\",\"ty6\");

function setSelect(which) {
    myForm = document.f;
    myForm.s2.length = mySelect[which].length;
    for (i=0; i<myForm.s2.length; i++) {
        myForm.s2.options[i].value = mySelect[which][i].value;
        myForm.s2.options[i].text = mySelect[which][i].text;
    }
    myForm.s2.options[0].selected = true;
}

</script>
</head>
<body onload=\"setSelect(0)\">

<form name=\"f\"\">
    <select name=\"s1\" style=\"width:150px\" onchange=\"setSelect(this.selectedIndex);\">
        <option value=\"0\">Danmark</option>
        <option value=\"1\">Sverige</option>
        <option value=\"2\">Tyskland</option>
    </select>
    <select name=\"s2\" style=\"width:150px\" >
    </select>
</form>

</body>
</html>

...og spørgsmål #2:

<html>
<body>

<form name=\"f\">
    <select name=\"s1\" style=\"width:150px\" onchange=\"s2.options[this.selectedIndex].selected=true;\">
        <option value=\"0\">Danmark</option>
        <option value=\"1\">Sverige</option>
        <option value=\"2\">Tyskland</option>
    </select>
    <select name=\"s2\" style=\"width:150px\" >
        <option value=\"0\">Danmark</option>
        <option value=\"1\">Sverige</option>
        <option value=\"2\">Tyskland</option>
    </select>
</form>

</body>
</html>

mvh
</bole>
Avatar billede mikkel_breum Nybegynder
15. januar 2001 - 12:12 #3
Tal til olebole for et præcist svar og et en kode der fungere upåklageligt.
dog gæmmer der sig tilsyneladende nogle usynlige tegn i koden til spørgsmål #2 som jeg ikke kunne se (BBEdit på Mac). Disse tegn gør at koden ikke fungere når jeg copy/paster den til et html dokument.
Løsningen var at slette alt der ligner mellemrum i koden (og erstatte med nye mellemrum hvor nødvendigt) så fungere det.
(BBedit viser mellemrum i koden som den ikke markerer som hverken \"space\" eller \"tab\" characters... hvad kan det være?)
Avatar billede olebole Juniormester
15. januar 2001 - 16:02 #4
Se det kommer tit, når du kopierer kode fra Eksperten ned på en Mac...welcome to the club. Dog ikke, hvis oprindelses-maskinen er Mac. Det var den for én gangs skyld ikke i dette tilfælde.
Jeg har løseligt snakket med Admin om det, men det gled ud i sandet, p.gr.a. stor arbejdsbyrde...jeg fik aldrig meldt ordentligt tilbage :(
Det må jeg vist gøre noget ved...Admin har lovet at prøve at rette det :))
/mvh
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