jQuery要上传的放置文件

jQuery drop file to upload

本文关键字:文件 jQuery      更新时间:2023-09-26

我想用drop文件上传文件我知道用$.ajax是不可能的在这里这是我的代码

$('.eCover').on(
    'dragover',
    function(e) {
        e.preventDefault();
        e.stopPropagation();
    }
)
$('.eCover').on(
    'dragenter',
    function(e) {
        e.preventDefault();
        e.stopPropagation();
    }
)
$('.eCover').on(
    'drop',
    function(e){
        if(e.originalEvent.dataTransfer){
            if(e.originalEvent.dataTransfer.files.length) {
                e.preventDefault();
                e.stopPropagation();
                /*UPLOAD FILES HERE*/
                upload(e.originalEvent.dataTransfer.files);
            }   
        }
    }
);
function upload(files){
    $.ajax({
        type: "post",
        url: "upload.php",
        data: {data:files},
        dataType: "json",
        cache:false,
        success:function(data){
            alert(data);
            return false;
        }
    })
}

我不能用ajax发送数据文件,该怎么办?我想通过代码而不是插件来尝试感谢

您可以使用XMLHttpRequest对象使用FormData 上传

function upload(myfile) {
        var fd = new FormData();
        fd.append("fileToUpload", myfile);
        var xhr = new XMLHttpRequest();
        xhr.open("POST", "upload.php");
        xhr.send(fd);
}

摘自本教程