JavaScript:ajaxSubmit错误

MrG*_*MrG 5 javascript browser jquery

我有一个按钮触发的以下JS功能:

function uploadPicture( ) {
    $("form#pictureUpload").ajaxSubmit({
        data: $("form#pictureform").serialize(),
        type: 'post',
        url: '?action=loadpicture',
        success: function(response) {
            $('#div-pictures').html(response);
        }
    }); 
Run Code Online (Sandbox Code Playgroud)

}

这几个月完美无缺.但它今天在Firefox,Safari,Chrome和Opera中停止工作 - 尽管它仍可在Internet Explorer中正常运行.

Safari给了我以下神秘错误:

    Failed to load resource: cancelled       ?action=loadpicture
Run Code Online (Sandbox Code Playgroud)

Chrome输出几乎相同(没有: cancelled).Opera和Firefox完全没有错误.唯一的附加信息是上述错误在文件上传完成后发生,尽管服务器生成HTML输出作为反馈,浏览器会忽略它.

如果你有任何想法如何解决这个问题,请告诉我.我已经在圈子里运行了几个小时甚至没有接近解决方案 - 我只是看到代码和日志文件中没有错误.非常感谢!

MrG*_*MrG 5

我花了一段时间,但我终于明白了.我们的一位管理员添加到Apache配置中:

Header append X-FRAME-OPTIONS "DENY"
Run Code Online (Sandbox Code Playgroud)

由于http://jquery.malsup.com/form/#file-upload中描述的iframe用法,导致某些浏览器出现问题.将其更改为以下内容后,一切正常(无代码更改!):

Header append X-FRAME-OPTIONS "SAMEORIGIN"
Run Code Online (Sandbox Code Playgroud)

无论如何,Safari和Chrome上的错误信息都很神秘.在其他浏览器上没有任何错误消息的奇怪行为甚至更糟.