Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 中止ajax文件上载_Javascript_Jquery_Ajax_File Upload - Fatal编程技术网

Javascript 中止ajax文件上载

Javascript 中止ajax文件上载,javascript,jquery,ajax,file-upload,Javascript,Jquery,Ajax,File Upload,我需要通过点击取消按钮来实现AJAX文件上传中断。 下面是我尝试使用的代码: var reqx=null; function ajax_upload(){ reqx = $.ajax({ type: 'post', url: "/file.php", data: new FormData( $('#file')[0] ), cache: false, contentType: false,

我需要通过点击取消按钮来实现AJAX文件上传中断。 下面是我尝试使用的代码:

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;
    }
});
单击“取消”按钮会导致错误:

Uncaught TypeError: reqx.abort is not a function

需要帮助找出我代码中的错误。谢谢。

IIRC您正在寻找解决方法()。它会使延迟处理立即完成并处理任何已完成的逻辑。

abort()
是一种合法的方法,请参见:顶部注释:啊,好的。我发现文档中提到的向后兼容性jqXHR确实公开了abort方法。所以,是的,不知道为什么会出现这样的错误。