从Ajax返回数据
我有这个功能从Ajax返回数据,ajax,Ajax,我有这个功能 function Get_Data(FileName) { $.ajax({ type: 'POST', url: FileName, data: "{}", contentType: "application/json; charset=utf-8", dataType: 'json', success: function (jsonData) { a
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)代码>
我知道这里的数据
如果我在地址栏中输入minu Required.asp?id=29
,我会得到
[{"ID":10,"Sname":"Farm"}] :)
当它运行时
消息框(警报框1)
说“确定”[object object]”,这是获取数据功能中的警报
但secord消息框不显示:(:(
我缺少什么?添加async:false,
作为ajax调用的参数。函数“Get\u Data”中的ajax调用是异步的。当ajax调用成功完成时,将调用第一条警报消息,而在“Get\u Data”函数之外的其他警报消息将单独运行
当ajax调用和当前进程在不同的线程上运行时,它类似于线程
要使所需的事情成为可能,可以使ajax调用异步
async:false
或者将第二个警报消息调用放在ajax调用的成功回调中。ajax调用是异步的,因此在ajax调用完成之前已经返回了值。如果您希望函数返回ajax响应,则需要发出同步ajax请求。发出同步ajax调用将解决您的问题,但可能不是一个问题t练习,你应该更具体地说明你想要实现什么;
async:false