Имеется множество input'oв c type="file", без multiple. Выбираю в каждом по картинке, и хочу загрузить все эти картинки на сервер используя плагин blueimp, используя один запрос.
Реализация стырена с
stackoverflow.com/questions/8940283/programmatical..., используется следующий хак (как мне кажется).
Html:
<div id="fileupload"> helper div</div>
<input id="post" type="button" value="GO"/>
<input class="zz" type="file" name="file" ><br />
<input class="zz" type="file" name="file" ><br />
<input class="zz" type="file" name="file" ><br />
JS:
$(function () {
var allFiles = [];
$('#fileupload').fileupload({
singleFileUploads:false,
dataType: 'json',
url: '@Url.Action("index")',
done: function(e, data) {
$.each(data.result, function(index, file) {
$('<p/>').text(file.name).appendTo(document.body);
});
}
});
$('.zz').bind('change', function (e) {
var f;
f = e.target.files || [{ name: this.value }];
allFiles.push(f[0]);
});
$("#post").click(function () {
$('#fileupload').fileupload('send', { files: allFiles });
});
});
В ie10+ и нормальных браузерах код работает отлично. В ie 8-9, которые не имеют поддержки file upload с использованием XHR, данный код не работает.
На странице документации
https://github.com/blueimp/jQuery-File-Upload/wiki... описано что надо использовать fileInput, однако как его заюзать с использованием такого кода я не понял.
Прошу поделиться какими-либо мыслями по этому поводу, может кто посоветует лучший подход или плагин.
Server side: .NET