Jquery ajax返回404未找到

Ash*_*kar 6 javascript php ajax jquery

我正在使用Ajax将表单数据和文件传递给PHP文件进行处理.

Javascript:

$("form#applyform").submit(function(){

var data = new FormData();
jQuery.each($('#file')[0].files, function(i, file) {
    data.append('file-'+i, file);
});

$.ajax({
    url: 'ValidateApplication.php',
    data: data,
    cache: false,
    contentType: false,
    processData: false,
    type: 'POST',
    success: function(data){
        alert(data);
    }
});

}
Run Code Online (Sandbox Code Playgroud)

ValidateApplication.php肯定存在.如果我在Web浏览器中输入地址,我可以查看它,但是当我提交表单时,Chrome控制台会返回404.

PHP与运行JavaScript的HTML页面位于同一文件夹中,所以我很困惑为什么我会继续获得404.

UPDATE

将POST更改为GET可以消除404错误,但会返回500内部服务器错误

更新2

将表单的操作更改为="ValidateApplication.php"并正常提交(没有AJAX)会导致正确的文件没有任何错误.

Ash*_*kar 4

看来是物体出了问题FormData。一旦我改变了使用方法.serialize(),该页面就可以正常工作了。

$("form#applyform").submit(function(){

    var data = $("form#applyform").serialize();
    jQuery.each($('#file')[0].files, function(i, file) {
        data.append('file-'+i, file);
    });

    $.ajax({
        url: 'ValidateApplication.php',
        data: data,
        cache: false,
        contentType: false,
        processData: false,
        type: 'POST',
        success: function(data){
            alert(data);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)