Jquery - fyll popup 2 beroende på val i popup 1
Visa signatur
Hej alla hjälpsamma!
Här kommer en Jquery-nöt. Hur gör jag följande med Jquery?
Jag har två popup-menyer. Popupmeny 1 innehåller en ledtext som är vald default samt tre val. Popupmeny 2 innehåller endast en ledtext som är vald default. När besökaren väljer något av de tre valen i meny 1 så ska meny 2 fyllas på med val.
<form name="myForm">
<select id="areas" name="areas" size="1">
<option selected="selected">Välj område</option>
<option value="area1">Område 1</option>
<option value="area2">Område 2</option>
<option value="area3">Område 3</option>
</select>
<select id="streets" name="streets" size="1">
<option selected="selected">Välj gata (välj område först)</option>
</select>
</form>
Detta skulle alltså falla ut som följer:
Meny 1 ------------ Meny 2
Område 1 --------- Gata 1, Gata 2, Gata 3
Område 2 --------- Gata A, Gata B, Gata C
Område 3 --------- Gata X, Gata Y, Gata Z
Mycket tacksam! Hemskt tacksam!
Baserat på din HTML ovan (helt otestat, visar dig i rätt riktning bara):
$(function(){
var map = {
area1: [ 'Gata 1', 'Gata 2', 'Gata 3' ],
area2: [ 'Gata A', 'Gata B', 'Gata C' ],
area3: [ 'Gata I', 'Gata II', 'Gata III' ]
};
$('#areas').change(function(){
var area = this.value; // this är elementet <select> och value är det i <option value="...">
var $s = $('#streets'); // hämta #streets till en variabel (fungerar som en cache)
// För varje gata i detta område...
for(var i = 0; i < map[area].length; i++){
$s.append('<option>' + map[area][i] + '</option>');
}
});
});
Tackar!
Copyright © 1999–2023 Geeks AB. Allt innehåll tillhör Geeks AB.
Citering är tillåten om källan anges.