我正在尝试让用户选择一些数据,然后使用ajax将其插入数据库。然后,我使用ajax从我的json端点获取新数据,这样我就可以在不重新加载的情况下更新网页。但是,ajax调用有时不会返回所有更新的数据。例如,如果用户要选择3个项目,则ajax调用有时仅返回前2个项目。
插入数据库
$.ajax({
dataType: "json",
url: "http://localhost:8080/api/addChampionForUser",
data: params,
async: false,
success: function (data) {
$.each(data.newChamp, function (key, val) {
if (val.mes) {
$(".message").append("<div> " + val.mes + " </div>");
}
else if (val.err) {
$(".message").append("<div> " + val.err + " </div>");
}
});
}
});
从api获取信息
$.ajax({
dataType: "json",
url: "http://localhost:8080/api/getChampions",
data: params,
//have also tried setting async to false
async: true,
success: function(data){
$.each(data.champions, function(key, val){
$.each(val, function(k2, v2){
alert(v2.name + " " + v2.type);
});
});
}
});
json输出如下所示:
{"champions":[[
{
"class":"championkeeper.Champion",
"id":null,
"name":"Aatrox",
"type":"fighter",
"user":"test"
},
{
"class":"championkeeper.Champion",
"id":null,
"name":"Blitzcrank",
"type":"fighter",
"user":"test"
},
{
"class":"championkeeper.Champion",
"id":null,
"name":"Darius",
"type":"fighter",
"user":"test"
}
]]}