Mне нужно, чтобы можно было добавлять несколько файлов на страницу, и код, в общем, работает. Но тот блок, который динамически создаётся, он уже не работает.
$('.block-file input[type="file"]').change(function(){
$(this).prev().addClass("del");
$(this).prev().removeClass("add");
$(this).prev().find("span").text($(this).val());
$(this).prev().attr('onclick', '$(this).parent().remove();')
$(this).parent().parent().append('<div class="block-file"><a class="add" onclick="$(this).next().click();"><i class="fa fa-plus-circle"></i><span>Вы можете добавить фото</span></a><input type="file" style="visibility:hidden;width: 0;"></div>');
});
HTML
<div class="block-file">
<a class="add" onclick="$(this).next().click();"><i class="fa fa-plus-circle"></i><span>Вы можете добавить фото</span></a>
<input type="file" style="visibility:hidden;width: 0;">
</div>
Потому что DOM модель уже вгружена в браузер, вы не можете изменять динамически вновь созданные объекты (они попросту не загружены). Для решения проблемы вам надо использовать
$('body').on('change', '.block-file input[type="file"]', function(){
//... весь код тут
});
Подробнее http://api.jquery.com/on/
Вместо
$('.block-file input[type="file"]').change(function(){
используйте
$(document).on("change", '.block-file input[type="file"]', function(){
I have 2 typescript files, first appts file input point and the second mobiles
Пытаюсь запустить тесты на Jasmine через chimpjs, но прохождение тестов фейлится с ошибкой:
Если после загрузки страницы происходит аякс-обновление данных, как узнать где лежит js который вызывает обновление
Есть множество конструкций на сайте типа: