23. april 2005 - 19:32
Der er
16 kommentarer og 1 løsning
SELECT og disable
Hejsa Jeg har en select box(ANTAL_VAGTER) som har værdierne 1-20. Jeg mangler et script som gør at de 20 Select boxe som hedder VAGTID_1, VAGTID_2, VAGTID_3 OSV. blevet "aktive" afhænig af hvor værdien i "ANTAL_VAGTER"... Jeg håber at der er en som kan hjælpe :)
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
23. april 2005 - 19:37
#1
Altså du har en <select> med 20 <option> ? og hvad er det så præcis du ønsker? Er ikke helt med ;o)
23. april 2005 - 19:37
#2
Eller er det fordi du har en <select> og afhængig af den skal der komme flere selects?
23. april 2005 - 19:38
#3
Nr 2 :)
23. april 2005 - 19:46
#4
Så laver du en onchance <select name="antal_vagter" onchange="visvalgte(this.selectedindex)";> Det vil kalde en funktion med det indeks der er valgt i din select Din funktion kan så være noget ala function visvalgte(indeks){ if(indeks == 1){ var x = document.getElementById("vagtid_"+indeks) x.disabled = false } }
23. april 2005 - 19:46
#5
23. april 2005 - 19:55
#6
Oki, men tager det script højde for at hvis man vælger 3 vagter så skal 1+2+3 være aktive?
23. april 2005 - 20:05
#7
Ja den var værre. Jeg ved ikke om selectedIndex så returnerer samtlige valgte - det har jeg aldrig prøvet
23. april 2005 - 21:14
#8
Øv...
24. april 2005 - 12:24
#9
Er det måske sådan noget, du ønsker ?-) -- bemærk, at jeg bruger display:block/none, normalt ville man bruge selects naturlige display-mode inline, men her ønsker jeg at have dem på forskellige linjer, og så er block meget simpel at bruge !-) -- og så har jeg af hensyn til pladsen skrabet linjerne sammen, det gør dem en anelse uoverskuelige ... <script type="text/javascript"> function aktiverSels(sel){ for(i=1;sel.length>i;i++){ document.getElementById("VAGTID_" + i).style.display = sel.options[i].selected?'block':'none';; } } </script> <select id="" multiple="multiple" size="5" onchange="aktiverSels(this)"> <option>-- Vælg vagter --</option> <option>Vagt 1</option><option>Vagt 2</option><option>Vagt 3</option><option>Vagt 4</option> <option>Vagt 5</option><option>Vagt 6</option><option>Vagt 7</option><option>Vagt 8</option> <option>Vagt 9</option><option>Vagt 10</option><option>Vagt 11</option><option>Vagt 12</option> <option>Vagt 13</option><option>Vagt 14</option><option>Vagt 15</option><option>Vagt 16</option> <option>Vagt 17</option><option>Vagt 18</option><option>Vagt 19</option><option>Vagt 20</option> </select> <select id="VAGTID_1" style="display:none;"><option>-- Vælg 1. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_2" style="display:none;"><option>-- Vælg 2. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_3" style="display:none;"><option>-- Vælg 3. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_4" style="display:none;"><option>-- Vælg 4. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_5" style="display:none;"><option>-- Vælg 5. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_6" style="display:none;"><option>-- Vælg 6. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_7" style="display:none;"><option>-- Vælg 7. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_8" style="display:none;"><option>-- Vælg 8. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_9" style="display:none;"><option>-- Vælg 9. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_10" style="display:none;"><option>-- Vælg 10. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_11" style="display:none;"><option>-- Vælg 11. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_12" style="display:none;"><option>-- Vælg 12. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_13" style="display:none;"><option>-- Vælg 13. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_14" style="display:none;"><option>-- Vælg 14. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_15" style="display:none;"><option>-- Vælg 15. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_16" style="display:none;"><option>-- Vælg 16. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_17" style="display:none;"><option>-- Vælg 17. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_18" style="display:none;"><option>-- Vælg 18. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_19" style="display:none;"><option>-- Vælg 19. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select> <select id="VAGTID_20" style="display:none;"><option>-- Vælg 20. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select>
24. april 2005 - 12:26
#10
-- og jeg kan da tilføje, at selectedIndex kun returnerer den første valgte i en multiple select !-)
24. april 2005 - 14:20
#11
Nej du misforstår, Antal_vagter skal være en NORMAL select. Et andet sted på siden er der 20 selects, de skal være synlige, men DISABLED. Og vælger men så ANTAL_VAGTER 3 så skal VAGT_ID1, VAGT_ID2 og VAGT_ID3 ikke være DISABLED så man kan vælge i dem... Forstår du bedre nu?
24. april 2005 - 14:24
#12
Så skal du lave funktionen om <script type="text/javascript"> function aktiverSels(sel){ for(i=1;sel.length>i;i++){ document.getElementById("VAGTID_" + i).disabled = sel.options[i].selected?'false':'true';; } } </script>
24. april 2005 - 14:33
#13
Så bliver det nærmere: <script type="text/javascript"> function aktiverSels(sel){ for(i=1;sel.length>i;i++){ document.getElementById("VAGTID_" + i).disabled = sel.selectedIndex>=i?false:true; } } </script> -- sammen med: <select id="VAGTID_1" disabled="disabled"><option>-- Vælg 1. tid --</option><option value="8">8-16</option><option value="16">16-24</option><option value="24">24-8</option></select>
24. april 2005 - 15:37
#14
Perfeckt :) roenving, takker kommer der ikke et sva fra dig?
24. april 2005 - 15:39
#15
Velbekomme '-)
24. april 2005 - 16:12
#16
Tak for point ;~}
24. april 2005 - 16:14
#17
Så lidt da :)
Vi tilbyder markedets bedste kurser inden for webudvikling