我有一个
<input type="file" name="uploadedFile">
型号:
public HttpPostedFileBase UploadedFile { get; set; }
上传工作正常,但在回发后的“UploadedFile”中,始终只有最后一次上传。 我需要上传多个文件,而不是一次性选择所有文件。 我知道你可以添加多个=“multiple”作为输入的属性,但是我需要一次选择所有文件。
尝试过清单,没有运气。
所以我需要的是:
目前我刚收到第二张图片。
任何人都可以帮我这个吗?
亲切的问候
答案 0 :(得分:0)
从未测试过,但我认为这应该对你有用
<input type="file" id="texboxID" name="uploadedFile[]">
<a href="#" onclick="addFiles()">Add File</a>
<script>
function addFiles(){
$("#myForm").append('<input type="file" name="uploadedFile[]" />')
}
</script>
然后上传应该是这样的:
function UploadFilesToServer(texboxID) {
var fileUpload = $("#" + texboxID+"").get(0);
var files = fileUpload.files;
var FilesToServer = new FormData();
for (var i = 0; i < files.length; i++) {
FilesToServer.append(files[i].name, files[i]);
}
$.ajax({
url: "url",
type: "POST",
contentType: false,
processData: false,
data: FilesToServer,
// dataType: "json",
success: function (result) {
alert(result);
},
error: function (err) {
alert(err.statusText);
}
});
}
希望我理解你的问题并以方便的方式回答你
答案 1 :(得分:0)
您可以将所选文件存储在FileList数组中,然后使用此数组上传文件
html:
<input type="file" id="fileUpload">
jQuery的:
$(document).ready(function(){
var fileArray=[];
$("#fileUpload").change(function(e){
var upFile = e.target.files[0];
fileArray.push(upFile);
console.log(fileArray);
});
})
我已经测试了它运行良好的数组,但我没有在后端测试它