Я хотел найти способ загрузить один файл *, в фоновом режиме, запустить его автоматически после выбора файла и не требовать загрузчика Flash, поэтому я пытаюсь использовать два больших механизмы (jQuery.Form и JQuery MultiFile) вместе. Мне это не удалось, но я уверен, что это потому, что я пропустил что-то фундаментальное.Программная подача формы при использовании AjaxForm
Только с помощью Многофайловое, я определяю форму следующим образом ...
<form id="photoForm" action="image.php" method="post" enctype="multipart/form-data">
Кнопка входного файла определяется как ...
<input id="photoButton" "name="sourceFile" class="photoButton max-1 accept-jpg" type="file">
И Javascript является ...
$('#photoButton').MultiFile({
afterFileSelect: function(){
document.getElementById("photoForm").submit();
}
});
Это прекрасно работает. Как только пользователь выбирает один файл, MultiFile отправляет форму на сервер.
Если вместо того, чтобы использовать Многофайловое, как показано выше, скажем, я включаю кнопку Submit вместе с плагином JQuery форма определяется следующим образом ...
var options = {
success: respondToUpload
};
$('#photoForm').ajaxForm(options);
... это также отлично работает , При нажатии кнопки «Отправить» форма загружается в фоновом режиме.
То, что я не знаю, как это сделать, - заставить эти два работать вместе. Если я использую Javascript для отправки формы (как показано в примере MultiFile выше), форма отправляется, но функция JQuery.Form не вызывается, поэтому форма не представляется в фоновом режиме.
Я подумал, что, может быть, мне нужно, чтобы изменить форму регистрации следующим образом ...
$('#photoForm').submit(function() {
$('#photoForm').ajaxForm(options);
});
... но это не решило проблему. То же самое верно, когда я пытался .ajaxSubmit вместо .ajaxForm.
Что мне не хватает?
- BTW: Я знаю, что может показаться странным использование MultiFile для однофайловых загрузок, но идея состоит в том, что количество файлов будет динамическим на основе учетной записи пользователя. Итак, я начинаю с одного, но число меняется в зависимости от условий.