我有兩個不同的ajax調用。第一個連接到Web服務的一種方法。如果它爲特定字段獲得任何空值,則應該從同一個Web服務調用另一個方法。這裏有使用兩個不同的ajax調用
$.ajax({
url: "webservices/ProdMonitorService.asmx/GetEstTimePrelimFinalCur",
data: "{'myactivity':'" + myactivity + "'}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
async: true,
success: function (data) {
var obj = jQuery.parseJSON(data.d);
for (var i = 0; i <= obj.length - 1; i++) {
var dur_time_formated = '';
var mytimedur = obj[i].time_duration;
if (mytimedur != null) {
dur_time_formated = mytimedur.replace('.000000', '');
}
else {
//only one time check for this
$.ajax({
url: "webservices/ProdMonitorService.asmx/GetEstTimePrelimFinalCurTotalProcessing",
data: "{'myactivity':'" + myactivity + "'}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
async: true,
success: function (data2) {
var obj2 = jQuery.parseJSON(data2.d);
dur_time_formated = obj2[0].total_processtime.replace('.000000', '');
}, error: function (result) {
//alert("Error: Please contact administrator for help: " + result.responseText);
}
});
}
對於第一個Ajax調用,它就會obj中的代碼。[0] ...... OBJ [7]但我們說的obj [0] .time_duration來null,則它應該去到第二個Ajax調用,但即使方法「GetEstTimePrelimFinalCurTotalProcessing」返回一些結果,dur_time_formated varialbe爲空;它甚至不是完全通過第二個Ajax調用後第一個。
第一次完成後應該使用done函數嗎?
在第一次ajax呼叫或第二? – one1day
在第一次ajax呼叫。但你可以同時使用。 –
感謝它解決了這個問題。我用它們兩個 – one1day