Я получаю странное поведение при попытке загрузить файлы с использованием многофайлового плагина jQuery из динамически загружаемой формы.
Я использую Firefox 9.0.1 / Mac
Вот как я пытаюсь привязаться к событию изменения: я тоже пробовал размытие (и нажимаю и ...)
$('#newticketform').live('change',function (e){ //newticket form is the form in which my input type=file is contained
$('#my_file_element').MultiFile(); //my_file_element is the input type=file element
});
Должна ли привязка быть к форме или полю ввода?Я попробовал оба без каких-либо различий в поведении.
При использовании .on вместо .live вышеуказанная функция вообще не срабатывает.
Мне удалось загрузить файлы перед загрузкой формы в виде динамического содержимого.При загрузке формы на мою главную страницу я, конечно, должен каким-то образом привязать событие.
Вот что происходит:
- 1-й раз: ничего не происходит (но его функция активируется, подтверждается с помощью оповещения).Т.е. к списку файлов, которые нужно загрузить, не прикреплено ни одного файла.
- 2-й раз: файл добавляется в список.
Похоже, что привязка не реализована до того, как в первый раз я пытаюсь добавить файл, и во второй раз, когда он работает,
На всякий случай я включаю и html:
<form method="post" enctype="multipart/form-data" id="newticketform">
<input type="hidden" value="2000000" name="MAX_FILE_SIZE">
<label for="title">Rubrik</label> <input type="text" name="title" id="title"><br><br>
<label for="description">Beskrivning</label> <textarea name="description" id="description" cols="50" rows="15"></textarea><br>
<input type="file" maxlength="5" name="file[]" id="my_file_element" class="multi">
<div id="files_list"></div>
<input type="submit" value="Upload" name="upload">
</form>
Протестировано это после обратной связи с Джаспером ниже:
$("#newticketmenu").live('click',function(event){
$("#adminarea").load("http://" + hostname + "/" + compdir + "/modules/core/newticket/newticket.php", function(){
$('#newticketform').on('change', '#my_file_element', function (){
$(this).MultiFile();
})
addNewTicketValidation();
});
});
Тем не менее, точно такое же поведение.
Все файлы JavaScript загружаются вместе с главной страницей.
Что я делаю не так?Мой способ привязки неверен?
Спасибо!