任何人都可以帮助使用jquery将AJAX json响应的结果加载到选择框中吗? 我的代码在下面
function filter_sector() {
console.log("sector selection has started!") // sanity check
console.log($('#sector_is').val())
$.ajax({
url : "",
type : "GET",
data : { sector_is : $('#sector_is').val() },
// handle a successful response
success : function(json) {
result = json;
console.log(result); // log the returned json to the console
$.each(result[0], function(key, value){
$('select[name=main-industry_group]').append('<option value="' + this.key + '">' + this.value +'</option>');
});
console.log("success"); // another sanity check
}
});
};
从控制台输出,结果是:
的 Object {561: "Administrative and Support Services", 562: "Waste Management and Remediation Services"}
控制台显示错误Uncaught TypeError: Cannot read property 'length' of undefined
。
任何帮助表示赞赏。
答案 0 :(得分:2)
您的结果不是数组,因此result[0]
未定义。而不是$.each(result[0],...
我认为你应该使用for循环:
for ( var key in result ) {
var value = result[key];
$('select[name=main-industry_group]').append('<option value="' + key + '">' + value +'</option>');
}