我有功能
function Get_Data(FileName) {
$.ajax({
type: 'POST',
url: FileName,
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: 'json',
success: function (jsonData) {
alert("OK " + jsonData); // alert box1
return jsonData;
},
error: function () {
alert('Error loading');
return "";
}
});
}
在我的函数中
var SS = Get_Data('Min_Required.asp?id=' + ID);
alert('ID = ' + SS[0].ID + ' SuppleName ' + SS[0].Sname); //alert box 2
我知道那里的数据
如果我把Min_Required.asp?id=29
放在地址栏中我得到
[{"ID":10,"Sname":"Farm"}] :)
运行时
消息框(alert box1)
说OK“[object Object]”这是Get_Data函数中的警告
但是secord消息框没有显示:( :(
我错过了什么?
答案 0 :(得分:2)
将async:false,
作为参数添加到ajax调用。
答案 1 :(得分:0)
函数'Get_Data'中的ajax调用是异步的。当ajax调用成功完成时,将调用第一条警报消息,并且在“Get_Data”函数之外的其他警报消息将单独运行。
类似于当ajax调用和当前进程在不同的线程上运行时的线程。
要使所需的东西成为可能,要么使ajax调用异步
async:false
或将第二个警报消息调用放在ajax调用的成功回调中。