我在创建拖放文件上传界面时遇到了一些麻烦 - 它适用于本地文件,但是当我尝试从资源管理器中的OneDrive拖动到“删除”按钮时区域,控制台报告net:ERR_FAILED
。
在某些情况下,是否无法通过非本地文件进行拖放操作?如果是这样,那么适用哪种限制?例如,Mac上的iCloud似乎运行良好。
上传者似乎认为它是一个有效的文件,但它似乎无法访问它或其他东西。
以防它有用,这里是代码的相关部分:
function handleFileUpload(files,obj) {
for (var i = 0; i < files.length; i++) {
var fd = new FormData();
fd.append('file', files[i]);
status.setFileNameSize(files[i].name,files[i].size);
sendFileToServer(fd,status);
}
}
function sendFileToServer(formData,status){
num_uploaded_files++;
checkUploadLimit();
var uploadURL = "uploader.php?request=upload_file"; //Upload URL
var jqXHR=$.ajax({
xhr: function() {
var xhrobj = $.ajaxSettings.xhr();
return xhrobj;
},
url: uploadURL,
type: "POST",
contentType:false,
processData: false,
cache: false,
data: formData,
success: function(data, textStatus, jqXHR){
status.setProcessing();
response = $.parseJSON(data);
if(response.success == 1) {
status.setType(response.file_type);
status.uploadComplete(response.id,response.file_type,response.new_filename);
type = response.file_type;
} else {
status.setFailure(response.failure_reason);
}
},
error: function(jqXHR, textStatus, errorThrown) {
status.setFailure(errorThrown);
}
});
status.setAbort(jqXHR);
}
$( document ).ajaxError(function( event, jqxhr, settings, thrownError ) {
console.log('AJAX error');
});
提前感谢您的任何帮助或建议!
答案 0 :(得分:0)