在这种情况下如何使用Ajax调用完成(完成)

时间:2014-11-28 07:14:02

标签: jquery

在加载页面时,我正在进行AJAX调用,如图所示

<script>
$(function() {

    var ajaxQuery = fecthDocumentData("","");

    ajaxQuery.done(function() {

    });
});
</script>


function fecthDocumentData(document_id, btnname)
{
$.ajax({
        type: 'GET',
        url: url + '/OMS/admin/document?document_row=' + document_id + '&btnName=' + btnname,
        jsonpCallback: 'jsonCallback',
        dataType: 'jsonp',
        jsonp: false,
        success: function(response) {
         var res = response;

    },
        error: function(e) {}
    });


}

我的问题是我怎么知道在这种情况下Ajax调用已经完成?

我尝试使用

ajaxQuery.done(function() {

alert('Ajax call completed callback called ');

});

但我收到错误,因为无法读取此行未定义的属性 ajaxQuery.done(function() {

2 个答案:

答案 0 :(得分:3)

返回$.ajax()电话

的承诺
function fecthDocumentData(document_id, btnname) {
    return $.ajax({
        type: 'GET',
        url: url + '/OMS/admin/document?document_row=' + document_id + '&btnName=' + btnname,
        jsonpCallback: 'jsonCallback',
        dataType: 'jsonp',
        jsonp: false,
        success: function(response) {
            var res = response;
        },
        error: function(e) {}
    });
}

答案 1 :(得分:0)

检查成功函数中的响应...尝试提醒0r控制台响应数据..

function fecthDocumentData(document_id, btnname)
{
$.ajax({
        type: 'GET',
        url: url + '/OMS/admin/document?document_row=' + document_id + '&btnName=' + btnname,
        jsonpCallback: 'jsonCallback',
        dataType: 'jsonp',
        jsonp: false,
        success: function(response) {
         var res = response;
         alert(res); //check out the value and if you get any value here .. and to what ever stuff you want here 


    },
        error: function(e) {}
    });


}

没有必要使用.done函数......

ajaxQuery.done(function() {

    });

您只能在成功功能中执行此操作