FormData追加返回undefined

时间:2018-06-17 20:25:59

标签: javascript ajax drag-and-drop append form-data

我目前正在研究拖拉机删除用户可以上传照片的应用程序。当用户将照片拖动到拖动区域时,javascript函数会在我将event.dataTransfer.files数组发送到ddUpload函数的位置启动,然后我使用FormData通过{{1}发送它}}。
但是,即使我将数据附加到AJAX变量,formdata变量也会返回undefined 拖放代码

dropzone.ondrop = function(e){ // dropzone = document.getElementById("dropzone")
    e.preventDefault();
    ddUpload(e.dataTransfer.files); // send data to custom function
}

var ddUpload = function(files){
    var formdata = new FormData(); // create empty FormData
    for(var i = 0; i < files.length; i++){ // loop through every photo
        formdata.append("file[]",files[i]); // then append the current item to a file array
    }
    var ajax = new ajaxObj("POST","/php_parsers/photo_system.php"); // ajaxObj is a prewritten function for XMLHttpRequest by me
    ajax.onreadystatechange = function(){
        if(ajaxReturn(ajax) == true){ // if ajax.readyState == 4 && ajax.statusCode == 200
            console.log(ajax.responseText); // echo responseText
        }
    }
    ajax.send(formdata); // send formdata to PHP server
}

结果:

console.log(formdata[i]); // returns back undefined
console.log(formdata); // returns back Object FormData
console.log(files); // gives back the proper values

基本上,如果我向formdata添加任何内容然后回显它,它总是会返回undefined

所以问题是为什么formdata为空且undefined

0 个答案:

没有答案