Javascript 是否可以使用HTML拖放文件上传,但不使用AJAX/XHR?
我的表单接受拖放事件,但我在网上读到的所有关于它们的信息似乎都暗示,您不能像Javascript 是否可以使用HTML拖放文件上传,但不使用AJAX/XHR?,javascript,html,drag-and-drop,Javascript,Html,Drag And Drop,我的表单接受拖放事件,但我在网上读到的所有关于它们的信息似乎都暗示,您不能像那样将拖放的文件作为标准表单提交的一部分进行上传。实际上是否可以避免AJAX/XHR,在提交表单时只上传文件?也许将文件数据移动到文件输入中?这可以使用jQuery完成。下面是一个示例代码: $(document).on("dragover drop", function(e) { e.preventDefault(); // allow dropping and don't navigate to file on d
那样将拖放的文件作为标准表单提交的一部分进行上传。实际上是否可以避免AJAX/XHR,在提交表单时只上传文件?也许将文件数据移动到文件输入中?这可以使用jQuery完成。下面是一个示例代码:
$(document).on("dragover drop", function(e) {
e.preventDefault(); // allow dropping and don't navigate to file on drop
}).on("drop", function(e) {
$("input[type='file']")
.prop("files", e.originalEvent.dataTransfer.files) // put files into element
.closest("form")
.submit(); // autosubmit as well
});
这允许您将文件拖到“选择文件”按钮上。访问此JSFIDLE查看其工作情况:
如果这有帮助,请将此标记为正确答案。试试这个:它解决了我一个不超过4小时的问题!出于安全考虑,这在各种浏览器(如FF)中都不起作用。