游.程 2016-01-06 21:39 采纳率: 0%
浏览 155

中止ajax文件上传

I need to implement AJAX file uploading interruption by click on cancel button. Here's code which I'm trying to use:

var reqx=null;

function ajax_upload(){
    reqx = $.ajax({
        type: 'post',
        url: "/file.php",
        data: new FormData( $('#file')[0] ),
        cache: false,
        contentType: false,
        processData: false,
        success: function (data) {
            console.log("success");
        },
        error: function (data) {
            console.log("error");
        }
    })
}

$('input[type=file]').change(function () {
    ajax_upload();
});

$('#cancel').click(function(){
    if (reqx != null){ 
        reqx.abort();
        reqx = null;
    }
});

Clicking on Cancel button causes an error:

Uncaught TypeError: reqx.abort is not a function

Need help to find out mistake in my code. Thanks.

  • 写回答

1条回答 默认 最新

  • weixin_33725239 2016-01-06 21:46
    关注

    IIRC your looking for resolve(). http://api.jquery.com/deferred.resolve/ It causes the deferred to immediately complete and process any done logic.

    评论

报告相同问题?