我的代码中有2个选择元素。一个用于美国州( #us_state ),第二个用于城市( #city_name )。当我选择“状态”时,第二个选择元素必须仅包含存在于选定状态的城市。我使用ajax,我完成了请求并获得了响应。响应格式为id:name {"26332":"Abbott Park","27350":"Addieville", ...}
。现在,我想将选项添加到选项元素,并将其附加到选择带#city_name id
的元素。但我不知道如何实现这一结果。 <option value="key">value</option>
$('#us_state').bind('change', function() {
var projectId = $("#inputtitle").val();
var stateId = $(this).val();
var arrayData = {"projectId": projectId, "stateId":stateId};
$.ajax({
type: "GET",
url: "/bidboldly/projects/editproject/",
data: arrayData,
success : function(response) {
............
..........
},
error: function(){
alert("error");
}
})
});
答案 0 :(得分:2)
迭代从响应中收到的每个数组数据&amp;得到城市名称在var city中说。然后使用jquery append追加选项值(还记得使用$('#city_name').html("");
清除迭代循环外的选项)
$('#city_name').append('<option value="'+city+'">'+city+'</option>');
答案 1 :(得分:1)
这是你要找的吗?
data = eval('( '+response' )'); //Parse the JSON data
for (zip in data) { //Iterate through each item in data
$('#city_name').append('<option value="'+zip+'">'+data[zip]+'</option>'); //Append option to select element
}