Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 04.04.2018, 18:51
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Ошибки значит есть, в самом обработчике их нет. Консоль подскажет.
Ответить с цитированием
  #12 (permalink)  
Старый 04.04.2018, 19:03
Профессор
Отправить личное сообщение для Эдди Посмотреть профиль Найти все сообщения от Эдди
 
Регистрация: 19.06.2010
Сообщений: 279

Сообщение от j0hnik Посмотреть сообщение
Эдди,
предполагаю, что на момент выполнения данного кода

$('#delfile').click(function() {
     alert('Тра-ля-ля');
});


кнопки на странице еще нет, и обработчик не вешается.
Да, наверное. Load надо было делать.
Ответить с цитированием
  #13 (permalink)  
Старый 04.04.2018, 19:06
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Эдди,
Обработчик вешать колбек функцией.
Или
Вешать обработчик на родителя, выполнять проверку на нужный элемент.
Ответить с цитированием
  #14 (permalink)  
Старый 04.04.2018, 19:07
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Эдди
Load надо было делать.
А он причем? Даже пустое изображение будет иметь событие.

Вы не поясняете как делаете, и когда с ... А коли все это у вас динамически добавляется на страницу, то не Load, а либо делегирование обработки события, либо установка обработчика после добавления элемента на страницу.
Ответить с цитированием
  #15 (permalink)  
Старый 04.04.2018, 19:08
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от j0hnik
выполнять проверку на нужный элемент.
В JQ в этом нет необходимости, в методе все уже имеется.
Ответить с цитированием
  #16 (permalink)  
Старый 04.04.2018, 19:10
Профессор
Отправить личное сообщение для Эдди Посмотреть профиль Найти все сообщения от Эдди
 
Регистрация: 19.06.2010
Сообщений: 279

Сообщение от laimas Посмотреть сообщение
А он причем? Даже пустое изображение будет иметь событие.

Вы не поясняете как делаете, и когда с ... А коли все это у вас динамически добавляется на страницу, то не Load, а либо делегирование обработки события, либо установка обработчика после добавления элемента на страницу.
Да. Динамически добавляются сама картинка и картинка "Удалить".

"делегирование обработки события"??? Говорил, JS использую только по мере необходимости.
Ответить с цитированием
  #17 (permalink)  
Старый 04.04.2018, 19:22
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Эдди,
если по полной, то в вашем коде напрочь отсутствует логика.

Допустим - имеется исходный код: поле выбора файла, бокс куда будет помещаться предпросмотр и кнопка "Отменить", именно Отменить, а не Удалить, ибо нет у вас никакого удаления.

Загрузка файлов при этом асинхронная. Допустим - выбираем файл и грузим на сервер. Если нет ошибок, то по ответу сервера поле очищается и очищается бокс предпросмотра. Все, можно выбирать другой файл этим же набором элементов. Если хотим отказаться от загрузки щелкаем Отметить. Никакого делегирования не требуется.

А если клонируем этот набор, это уже динамическое добавление элементов. В остальном поведение может быть таким же.

Встает вопрос - а зачем так много наборов, если можно все делать одним? Если предполагается, что сперва набираем, а уже множество файлов загружаем (а не видно по вопросам чтобы это было так), тогда да. Но почему при удачной загрузке файлов нужно щелкать кнопки удаляя вручную отработанные наборы?
Ответить с цитированием
  #18 (permalink)  
Старый 05.04.2018, 07:56
Профессор
Отправить личное сообщение для Эдди Посмотреть профиль Найти все сообщения от Эдди
 
Регистрация: 19.06.2010
Сообщений: 279

Сообщение от laimas Посмотреть сообщение
ЭддиНо почему при удачной загрузке файлов нужно щелкать кнопки удаляя вручную отработанные наборы?
Логика у меня такая (поправьте, если можно лучше).
Клиент хочет загрузить несколько изображений на сайт.
Он их именно сразу загружает, а не просто выводит для просмотра.
Сразу же после загрузки клиент видит на странице уменьшенные уже загруженные на сервер картинки. И если вдруг передумал какую-то из них оставлять, то удаляет ее и конкретно ее.

Или надо их сначала показать, отобрать, а потом загрузить?
Особой разницы не вижу.
Ответить с цитированием
  #19 (permalink)  
Старый 05.04.2018, 12:24
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Предпросмотр загружаемого в рамках HTML5 можно организовать и до загрузки изображения на сервер.

Но пусть ваши картинки, это не предпросмотр, а что уже загрузилось, что в общем то можно и не делать, если это можно и на клиенте сделать.

Загрузка изображения на сервер, как впрочем и любого файла не обязательно успех и сразу, возможны ошибки загрузки. Значит это еще требует обработки. Пусть в этом вопросе у вас все как положено, но если "удалить после загрузки", то вообще не понятно как же вы удаляете их:

1) Должен быть запрос на сервер на удаление фото по параметрам которые должен возвращать сервер.
2) Клиент не имеет права удалять картинку на клиенте пока сервер не даст положительного ответа - изображение удалено.
Ответить с цитированием
  #20 (permalink)  
Старый 05.04.2018, 12:31
Профессор
Отправить личное сообщение для Эдди Посмотреть профиль Найти все сообщения от Эдди
 
Регистрация: 19.06.2010
Сообщений: 279

Собираюсь удалять с сервера файлы ajax-запросом.

А это как делается?
"установка обработчика после добавления элемента на страницу"
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не срабатывает событие click на динамически добавленный класс spo jQuery 10 16.11.2015 22:49
Срабатывает click со второго раза Gofol jQuery 5 14.01.2015 01:01
не срабатывает click по ссылке OlegALL Элементы интерфейса 3 22.12.2014 14:44
click срабатывает со второго раза jsuse jQuery 2 03.12.2011 03:44
Не срабатывает bind(и click) после load (или get) dijah jQuery 3 27.01.2009 20:05