如何设置选择框或下拉列表框的值,因为前一个列表框值已设置

可能重复:
使用jquery根据第一个选择列表选项更改第二个选择列表

我的代码中有两个选择元素。 一个用于州(#us_state),第二个用于城市(#city_name)。 当我选择“状态”时,第二个选择元素必须仅包含存在于选定状态的城市。

使用jquery append追加选项值(还记得清除迭代循环外的选项使用

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

 $('#city_name').append(''); 

一种可能的方案:

 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 $("").text(city); }); $("#city_name").empty().append($cities); }); for (var state in data) { $("").text(state).appendTo($states); }​ 

演示: http //jsfiddle.net/8hbcP/