Javascript 在网站应用程序中创建选择工具,如OneDrive中的选择工具
我正在制作一个网络应用程序,比如oneDrive 现在我想添加这个选择功能,但我不知道从哪里开始或做什么 如果有人有一个扩展或演示,请告诉我,我一直在寻找2天,从来没有找到任何东西 以下是我想要的:Javascript 在网站应用程序中创建选择工具,如OneDrive中的选择工具,javascript,jquery,css,html,Javascript,Jquery,Css,Html,我正在制作一个网络应用程序,比如oneDrive 现在我想添加这个选择功能,但我不知道从哪里开始或做什么 如果有人有一个扩展或演示,请告诉我,我一直在寻找2天,从来没有找到任何东西 以下是我想要的: 简单地把它放在一个表格中 <input type="file" multiple /> 用ctrl键选择多个文件并在服务器端处理请求只需将其放入表单中即可 <input type="file" multiple /> 用ctrl键选择多个文件并在服务器端处理请求或
简单地把它放在一个表格中
<input type="file" multiple />
用ctrl键选择多个文件并在服务器端处理请求只需将其放入表单中即可
<input type="file" multiple />
用ctrl键选择多个文件并在服务器端处理请求或者,您可能想要比简单的选择工具更好的东西。例如,拖放区允许您拖放多个文件。把它放到你的网页上
<div id="drop_zone">Drop files here</div>
<output id="list"></output>
<script>
function handleFileSelect(evt) {
evt.stopPropagation();
evt.preventDefault();
var files = evt.dataTransfer.files; // FileList object.
// files is a FileList of File objects. List some properties.
var output = [];
for (var i = 0, f; f = files[i]; i++) {
output.push('<li><strong>', escape(f.name), '</strong> (', f.type || 'n/a', ') - ',
f.size, ' bytes, last modified: ',
f.lastModifiedDate.toLocaleDateString(), '</li>');
}
document.getElementById('list').innerHTML = '<ul>' + output.join('') + '</ul>';
}
function handleDragOver(evt) {
evt.stopPropagation();
evt.preventDefault();
evt.dataTransfer.dropEffect = 'copy'; // Explicitly show this is a copy.
}
// Setup the dnd listeners.
var dropZone = document.getElementById('drop_zone');
dropZone.addEventListener('dragover', handleDragOver, false);
dropZone.addEventListener('drop', handleFileSelect, false);
</script>
将文件放到这里
功能手柄文件选择(evt){
evt.stopPropagation();
evt.preventDefault();
var files=evt.dataTransfer.files;//文件列表对象。
//文件是文件对象的文件列表。请列出一些属性。
var输出=[];
for(var i=0,f;f=files[i];i++){
output.push(“”,escape(f.name),“(”,f.type | | |“n/a”,“)-”,
f、 大小,'字节,上次修改:',
f、 lastModifiedDate.toLocaleDateString(),“ ”;
}
document.getElementById('list').innerHTML=''+output.join('')+'
';
}
功能手柄(evt){
evt.stopPropagation();
evt.preventDefault();
evt.dataTransfer.dropEffect='copy';//显式显示这是一个副本。
}
//设置dnd侦听器。
var dropZone=document.getElementById('drop_zone');
dropZone.addEventListener('Dragver',handleDragOver,false);
dropZone.addEventListener('drop',handleFileSelect,false);
如果您想要:
…绘制选择矩形并将所选项目放入数组中
将此内容放入您的页面:
<input type="file" id="files" name="files[]" multiple />
function handleFileSelect(evt) {
var files = evt.target.files; // FileList object - here your Array
var output = [];
for (var i = 0, f; f = files[i]; i++) {
var fd = new FormData();
fd.append('file', f); // - here your file
$.ajax({ // - here you can for example send your file with AJAX one by one
type: "POST",
url: "your_example_url",
data: fd, // -this is your one file from array
async: false,
cache: false,
contentType: false,
processData: false,
success: function (data, textStatus, request) {
}
});
}
}
document.getElementById('files').addEventListener('change', handleFileSelect, false);
功能手柄文件选择(evt){
var files=evt.target.files;//文件列表对象-这里是您的数组
var输出=[];
for(var i=0,f;f=files[i];i++){
var fd=新FormData();
fd.append('file',f);//-这里是您的文件
$.ajax({//-这里您可以使用ajax逐个发送您的文件
类型:“POST”,
url:“您的示例url”,
数据:fd,//-这是数组中的一个文件
async:false,
cache:false,
contentType:false,
processData:false,
成功:功能(数据、文本状态、请求){
}
});
}
}
document.getElementById('files').addEventListener('change',handleFileSelect,false);
或者,也许你想要比简单的选择工具更好的东西。例如,拖放区允许您拖放多个文件。把它放到你的网页上
<div id="drop_zone">Drop files here</div>
<output id="list"></output>
<script>
function handleFileSelect(evt) {
evt.stopPropagation();
evt.preventDefault();
var files = evt.dataTransfer.files; // FileList object.
// files is a FileList of File objects. List some properties.
var output = [];
for (var i = 0, f; f = files[i]; i++) {
output.push('<li><strong>', escape(f.name), '</strong> (', f.type || 'n/a', ') - ',
f.size, ' bytes, last modified: ',
f.lastModifiedDate.toLocaleDateString(), '</li>');
}
document.getElementById('list').innerHTML = '<ul>' + output.join('') + '</ul>';
}
function handleDragOver(evt) {
evt.stopPropagation();
evt.preventDefault();
evt.dataTransfer.dropEffect = 'copy'; // Explicitly show this is a copy.
}
// Setup the dnd listeners.
var dropZone = document.getElementById('drop_zone');
dropZone.addEventListener('dragover', handleDragOver, false);
dropZone.addEventListener('drop', handleFileSelect, false);
</script>
将文件放到这里
功能手柄文件选择(evt){
evt.stopPropagation();
evt.preventDefault();
var files=evt.dataTransfer.files;//文件列表对象。
//文件是文件对象的文件列表。请列出一些属性。
var输出=[];
for(var i=0,f;f=files[i];i++){
output.push(“”,escape(f.name),“(”,f.type | | |“n/a”,“)-”,
f、 大小,'字节,上次修改:',
f、 lastModifiedDate.toLocaleDateString(),“ ”;
}
document.getElementById('list').innerHTML=''+output.join('')+'
';
}
功能手柄(evt){
evt.stopPropagation();
evt.preventDefault();
evt.dataTransfer.dropEffect='copy';//显式显示这是一个副本。
}
//设置dnd侦听器。
var dropZone=document.getElementById('drop_zone');
dropZone.addEventListener('Dragver',handleDragOver,false);
dropZone.addEventListener('drop',handleFileSelect,false);
如果您想要:
…绘制选择矩形并将所选项目放入数组中
将此内容放入您的页面:
<input type="file" id="files" name="files[]" multiple />
function handleFileSelect(evt) {
var files = evt.target.files; // FileList object - here your Array
var output = [];
for (var i = 0, f; f = files[i]; i++) {
var fd = new FormData();
fd.append('file', f); // - here your file
$.ajax({ // - here you can for example send your file with AJAX one by one
type: "POST",
url: "your_example_url",
data: fd, // -this is your one file from array
async: false,
cache: false,
contentType: false,
processData: false,
success: function (data, textStatus, request) {
}
});
}
}
document.getElementById('files').addEventListener('change', handleFileSelect, false);
功能手柄文件选择(evt){
var files=evt.target.files;//文件列表对象-这里是您的数组
var输出=[];
for(var i=0,f;f=files[i];i++){
var fd=新FormData();
fd.append('file',f);//-这里是您的文件
$.ajax({//-这里您可以使用ajax逐个发送您的文件
类型:“POST”,
url:“您的示例url”,
数据:fd,//-这是数组中的一个文件
async:false,
cache:false,
contentType:false,
processData:false,
成功:功能(数据、文本状态、请求){
}
});
}
}
document.getElementById('files').addEventListener('change',handleFileSelect,false);
你在服务器端有什么?现在我写的都是前端没有开始写后端部分你在服务器端有什么?现在我写的都是前端没有开始写后端部分是的,我也需要这个。但我还需要一个选择工具,它可以选择所绘制的选择矩形中的所有项目,并将所选项目放入一个数组中。在这里你可以看到如何使用文件数组。是的,我也需要这个。但我还需要一个选择工具,它可以选择所绘制的选择矩形中的所有项目,并将所选项目放入一个数组中。在这里,您可以看到如何使用文件数组。