Jquery - fyll popup 2 beroende på val i popup 1

Permalänk

Jquery - fyll popup 2 beroende på val i popup 1

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!

Permalänk
Medlem

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>'); } }); });

Permalänk