Почему скрипт не работает с данными, которые вернул другой скрипт?
Есть тестовый скрипт:
$('img').click(function(){ alert("Hello"); }); Он замечательно работает, но стоит запустить скрипт ниже, и он перестает работать скрипт, который возвращает блок с картинками $('#photoimg').change(function() { // в поле input выбираем файл $("#imageform").ajaxForm({ target: '#preview' // все что вернет скрипт поместим в блок <div id='#preview'> }).submit(); }); <form id="imageform" method="post" enctype="multipart/form-data" action='ajaximage.php'> <input type="file" name="photoimg" id="photoimg" /> После выполнения скрипта, в блок <div id='#preview'> поместятся картинки. Почему тестовый скрипт не работает после того как php скрипт 'ajaximage.php' обновит данные? |
Или еще ПРОЩЕ:
Скрипт возвращает данные, помещает их в блок div, и на них перестает работать jquery, почему? Как заставить jquery работать с данными, которые выдал другой скрипт? |
На момент когда вы повесили обработчик события, элементов еще не было, поэтому на новых элементах не работает.
Либо после добавление элементов на страницу, вешайте на них обработчик. Либо воспользуйтесь функцией .live() (.on() в новых версиях) $('img').live('click', function() { alert('Hello'); }); |
walik, спасибо, с live все классно работает:)
|
Часовой пояс GMT +3, время: 17:36. |