Javascript 无法访问JSON对象的值
我在用flask做一个小项目。现在,我正在尝试从JSON对象向select添加选项。尽管可以插入选项,但我无法访问它们的值 这是我的代码:Javascript 无法访问JSON对象的值,javascript,python,json,ajax,flask,Javascript,Python,Json,Ajax,Flask,我在用flask做一个小项目。现在,我正在尝试从JSON对象向select添加选项。尽管可以插入选项,但我无法访问它们的值 这是我的代码: for dealership in session.query(Dealership).filter_by(ownerID = userId).all(): dealership_list.append({'Name' : dealership.name}) return jsonify(names = dealership_list) Ajax
for dealership in session.query(Dealership).filter_by(ownerID = userId).all():
dealership_list.append({'Name' : dealership.name})
return jsonify(names = dealership_list)
Ajax代码:
success:function(result){
$.each(result.names, function(Name, value) {
$('#dealerships').append($("<option/>", {
value: Name,
text: value
}));
});
},
result.names中的每个项目都是由查看功能定义的经销商
每个经销商都是由{Name:this\u经销商的名称}组成的dict
因此$.eachresult.names、functiondata{console.logdata}应该打印每个对象,它们是{Name:some\u Name}
所以把它改成
success:function(result){
$.each(result.names, function(dealership) {
$('#dealerships').append($("<option/>", {
value: dealership.Name,
text: dealership.Name
}));
});
},
把你的js改成
success:function(result){
$.each(result.names, function(index,a_dealer_name) {
$('#dealerships').append($("<option/>", {
value: a_dealer_name,
text: a_dealer_name
}));
});
}
result.names中的每个项目都是由查看功能定义的经销商
每个经销商都是由{Name:this\u经销商的名称}组成的dict
因此$.eachresult.names、functiondata{console.logdata}应该打印每个对象,它们是{Name:some\u Name}
所以把它改成
success:function(result){
$.each(result.names, function(dealership) {
$('#dealerships').append($("<option/>", {
value: dealership.Name,
text: dealership.Name
}));
});
},
把你的js改成
success:function(result){
$.each(result.names, function(index,a_dealer_name) {
$('#dealerships').append($("<option/>", {
value: a_dealer_name,
text: a_dealer_name
}));
});
}
@乔兰比斯利太棒了!我使用了第二种解决方案,但添加/更改了以下内容:
$.each(result.names, function(key,name) {
$('#dealerships').append($("<option/>", {
value: name,
text: name
}));
});
这是因为您的解决方案是打印索引而不是值。谢谢您的帮助 @JoranBeasley真棒!我使用了第二种解决方案,但添加/更改了以下内容:
$.each(result.names, function(key,name) {
$('#dealerships').append($("<option/>", {
value: name,
text: name
}));
});
这是因为您的解决方案是打印索引而不是值。谢谢您的帮助 修正:谢谢你的提醒。。。我不做太多的事。谢谢你的提醒。。。我做的不多