30. august 2002 - 17:08Der er
8 kommentarer og 1 løsning
valgt option i select -> vis tekst
Jeg har en select med nogle option elementer. Hvergang jeg vælger et af disse options, skal der vise sig noget tekst på siden, gerne lige under select-boxen. Dette skal vel og mærke ske lige når man har valgt option-elementet og ikke efter man har trykket på en knap.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!-- ** Alle rettigheder og alt det plader er berettiget YoungShopper.com ** Copyright (c) Rune Nielsen & Poul Erik Rasmusen 2002 ** Hehe hvad man dog kan skrive af finesser :-) --> <html> <head> <title>Untitled</title> </head>
<body>
<script language="JavaScript"> function ShowNumber() { //Finder "id'en" så den kan vælges senere SelIndex = document.form1.users.selectedIndex; //Her bruges "id'en" til at finde den korrekte option ShowID = document.form1.users.options[SelIndex].value; //Her udskrives scriptet så endelig til inputboxen ShowPhonenumber = document.form1.number.value = Phonenumber[ShowID]; }
ID = Array() //Laver et ID for hvert telefonnummer der er for (i = 0; i < Phonenumber.length; ++i) { ID[i] = i; } </script>
<form name="form1"> <select name="users" onChange="ShowNumber();"> <script language="JavaScript"> //Udskriver en option for hvert telefonnummer der er for (i = 0; i < Phonenumber.length; i++) { //Hvis løkken er = 0 så skal den lave en selected på option'en (en overskrift) if (ID[i] == 0) { document.write("<option selected value='" + ID[i] + "'>" + User[i]); } else { document.write("<option value='" + ID[i] + "'>" + User[i]); } } </script> </select> <input type="text" name="number"> </form>
medions> mon du poste scriptet igen uden den for-løkke og arrays i java script. Jeg laver min option-elementer på akkurat samme, men med en PHP for-løkke.
Dog bliver jeg hurtig forvirret over java-scripts...
function putNy( selObj ) { var elm; if ( document.getElementById ) elm= document.getElementById('olsen'); else if ( document.all ) elm = document.all['olsen']; else return; // dette duer ikke i netscape 4. elm.innerHTML = selObj.options[selObj.selectedIndex].text; }
</script>
i din <select kommando tilføjes en onchange handeler <select name="users" onChange="putNy(this);">
og der teksten skal stå laver du et lille span: <span id='olsen'>her kommer teksten</span>
Jeg prøver lige at få medions version til at fungere:
<script language="JavaScript"> function ShowNumber() { //Finder "id'en" så den kan vælges senere SelIndex = document.selectroute.routes.selectedIndex; //Her bruges "id'en" til at finde den korrekte option ShowID = document.selectroute.routes.options[SelIndex].value; //Her udskrives scriptet så endelig til inputboxen ShowOptionelement = document.selectroute.routedata.value = Optionelement[ShowID]; } Optionelement = Array() Optionelement[0] = "Dette er vestbanen"; Optionelement[1] = "Dette er ikke vestbanen";
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.