Avatar billede dava Nybegynder
28. marts 2002 - 13:15 Der er 5 kommentarer og
1 løsning

Preselect OPTION

Jeg sidder og roder lidt med to SELECT menuer ( se eksempel på min addresse http://www.dotdeek.dk/argh/index.html ) hvor indholdet i box 2 bestemmes af valget i box 1.
Nu er det jo sådan at man kan bruge SELECTED i OPTION taggen til at select'e en bestemt OPTION i listen, og det er jo godt nok, men... når nu at indholdet i box 2 er dynamisk (afhængigt af box nummer 1) hvordan kan jeg så opnå en tilsvarende effekt med JS til at pre-select'e en bestemt option når siden loader?
Avatar billede nute Nybegynder
28. marts 2002 - 13:39 #1
document.formnavn.selectnavn.selectedIndex = 2;

dette vil selecte verdi nummer 3 i din dropdown liste:

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

<html>
<head>
    <title>Untitled</title>
    <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
  <!--
  function selChoice(){
        document.frm.sel.selectedIndex = 2;
    }
  //-->
  </SCRIPT>
</head>

<body onload="selChoice();">
<form name="frm">
<select name="sel">
<option value="1">Verdi 1</option>
<option value="2">Verdi 2</option>
<option value="3">Verdi 3</option>
<option value="4">Verdi 4</option>
</select>
</form>
</body>
</html>

/nute
Avatar billede dava Nybegynder
28. marts 2002 - 14:44 #2
Jo, det er sådan set svaret på mit problem. Men... er der andre måder at gøre det på, end ved hjælp af onLoad? -Er det muligt at pre-selecte option'en inde i <FORM></FORM> blokken...?
Det er sådan at indholdet i mine to SELECT kasser bliver lavet i et loop i PHP, og jeg kender først selectedIndex *efter* at BODY er blevet defineret... Jeg kan selvfølgelig flytte lidt rundt på rækkefølgen i afviklingen af HTML/PHP scriptet, men det giver en del bøvl... hehe
Avatar billede nikolajdu Nybegynder
28. marts 2002 - 18:43 #3
<option value="3" selected>Verdi 3</option>

:))

/Nikolaj
Avatar billede nikolajdu Nybegynder
28. marts 2002 - 18:46 #4
Det nemmeste er naturligvis at udskrive "selected" direkte fra PHP

for ($i=0;$i<=$antalOptions;$i++){
if(!$valgt){
echo ("<option value='hej hej'>hej</option>");
}else if($valgt){
echo ("<option selected value='Goddaw'>Goddaw du</option>");
}
}

Noget i den dur :))

/Nikolaj
Avatar billede dava Nybegynder
28. marts 2002 - 19:55 #5
:)
Yups... -de er lige præcis det jeg roder med.
Den første liste bliver selected efter samme princip som du viser, og det er jo sådan set godt nok, indholdet i den næste liste bliver også lavet via PHP men da indholdet af listen er dynamisk  (på klientsiden) så er det desværre ikke så lige til...

I princippet har nute givet mig et svar, men jeg lader spm stå åbent lidt endnu, måske det er muligt at lave det uden at skulle bruge <BODY onload...>

:)
Avatar billede nikolajdu Nybegynder
29. marts 2002 - 04:39 #6
1. Du har ikke ladet det stå åbet  :))
2. Næh, hvis du vil selecte oget fra en start må det nødvendigvis ske via onload.

:))

/Nikolaj
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