我在.Net网络应用程序中工作。
我同步完成了几个ajax调用(async:false),因为我需要在本地变量中获取ajax结果的值。
但如果我在进入ajax时加载可见,它在firefox中工作正常,Chrome和IE不支持。
请帮助我,为此做任何工作???
function findtempvalues(tempparam) {
var tempnamevalues = new Array();
$.ajax({
type: "POST",
url: "Services/Locale.asmx/templatename",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ tempwidpath: tempparam }),
dataType: "json",
async: false,
success: function (result) {
tempnamevalues = result.d;
},
error: function () {
alert("error");
},
timeout: 3000
});
return tempnamevalues;
}
答案 0 :(得分:0)
异步调用和.done(function(data){ //handle data... })
检索数据。
答案 1 :(得分:0)
进行异步调用并显示加载消息
function findtempvalues(tempparam)
{
$('#loadingMessage').css('visibility', 'visible');
$.ajax({
type: "POST",
url: "Services/Locale.asmx/templatename",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ tempwidpath: tempparam }),
dataType: "json",
async: true,
success: function (result) {
callback(result)
},
error: function () {
alert("error");
},
complete: function () {
$('#loadingMessage').css("visibility", "hidden");
},
timeout: 3000
});
}
function callback(result)
{
var tempnamevalues = new Array();
tempnamevalues = result.d
// continue ...
}
在回调函数中获取结果,不要进行“返回”
在你的HTML中,你有类似的东西:
<span id="loadingMessage" style="visibility: hidden;">Loading ...</span>