0

重複の可能性:
jqueryを使用して、最初の選択リストオプションに基づいて2番目の選択リストを変更します

コードに2つのselect要素があります。1つは州(#us_state)用、もう1つは都市(#city_name)用です。「州」を選択する場合、2番目のselect要素には、選択した州に存在する都市のみが含まれている必要があります。

4

2 に答える 2

2

考えられる解決策の1つ:

var data = {
    "State 1": ["City 1", "City 2"],
    "State 2": ["City 3", "City 4"],
    "State 3": ["City 5", "City 6", "City 7"]
};

var $states = $("#us_state").on("change", function() {
    var $cities = $.map(data[this.value], function(city) {
        return $("<option />").text(city);
    });
    $("#city_name").empty().append($cities);
});

for (var state in data) {
    $("<option />").text(state).appendTo($states);
}​

デモ:http: //jsfiddle.net/8hbcP/

于 2012-10-16T10:49:40.963 に答える
0

jqueryappendを使用してオプション値を追加します(また、を使用して反復ループの外側のオプションをクリアすることを忘れないでください

$('#city_name').html("");

$('#city_name').append('<option value="'+city+'">'+city+'</option>');
于 2012-10-16T10:41:43.333 に答える