我正在尝试构建SharePoint自定义Web部件。在该Web部分中,我只有一个文件上载控件,我需要从一个控件上传多个文件。
我尝试了不同的代码:
<input id="files" type="file" multiple="multiple" />
<input id="files" type="file" AllowMultiple="true" />
<asp:input id="files" type="file" multiple="multiple" />
我无法从文件浏览器窗口中选择多个文件。
应用程序:
SharePoint:2010版
浏览器:IE 11
请帮我解决此问题。
谢谢你:)
答案 0 :(得分:0)
从不开发Sharepoint,但我使用了Devexpress控件,并且知道它们也可以在SharePoint WebParts中使用。尝试上传控制,它可以选择并上传multiple files。
答案 1 :(得分:0)
您可以使用drag and drop库
function makeDroppable(element, callback) {
var input = document.createElement('input');
input.setAttribute('type', 'file');
input.setAttribute('multiple', true);
input.style.display = 'none';
input.addEventListener('change', triggerCallback);
element.appendChild(input);
element.addEventListener('dragover', function(e) {
e.preventDefault();
e.stopPropagation();
element.classList.add('dragover');
});
element.addEventListener('dragleave', function(e) {
e.preventDefault();
e.stopPropagation();
element.classList.remove('dragover');
});
element.addEventListener('drop', function(e) {
e.preventDefault();
e.stopPropagation();
element.classList.remove('dragover');
triggerCallback(e);
});
element.addEventListener('click', function() {
input.value = null;
input.click();
});
function triggerCallback(e) {
var files;
if(e.dataTransfer) {
files = e.dataTransfer.files;
} else if(e.target) {
files = e.target.files;
}
callback.call(null, files);
}
}
var element = document.querySelector('.droppable');
function callback(files) {
// Here, we simply log the Array of files to the console.
console.log(files);
}
makeDroppable(element, callback);