我正在处理拖放n拖放功能。我有我需要捕获该文件的代码,当它放在我的拖放区域,但我有一些问题发送给xmlhttprequest,因为我不能通过jQuery或ajax发送。将动态类型文件的输入添加到表单中
我现在正在考虑一个隐藏的iFrame,但我并不真正知道如何将这个文件附加到我已经拥有的,这要感谢用户放置到现有的表单。
var droparea = $('#dropzone');
var uploadButon = $('#upload');
droparea.on('dragover',function(){
$(this).addClass('dragover');
return false;
});
droparea.on('dragleave',function(){
$(this).removeClass('dragover');
return false;
});
droparea.on('drop', function(e) {
e.stopPropagation();
e.preventDefault();
$(this).removeClass('dragover');
var files = e.originalEvent.dataTransfer.files;
var formData = new FormData($("form")[0]);
for(var i = 0; i < files.length; ++i) {
var file = files[i];
formData.append("files[]", file);
}
return $.ajax({
url: "upload.php",
type: "POST",
data: formData,
processData: false,
contentType: false,
success: function(text) {
alert(text);
}
});
});
//the php
<?php
echo count($_FILES["files"]);
for($i = 0; $i < count($_FILES["files"]["name"]) ; $i++)
{
if(move_uploaded_file($_FILES["files"]["tmp_name"][$i], "upload/".$_FILES["files"]["name"][$i]))
echo "ok";
else
echo "no";
}
?>
那应该工作,假设'$('userDropedFile')'目标文件输入。但是,如果您使用的是拖放式文件上传,为什么不再进一步实施xhr文件上传,而不是使用iframe(如果可用)? – 2013-03-21 15:50:24
为什么输入的文件不在表格中? – Esailija 2013-03-21 15:53:58
现在,那是我的代码。 – 2013-03-21 16:14:12