Проблемы с div обновлённым через (#id).load
Всем доброго времени суток.
Я честно потратил пару часов, чтобы найти ответ на свой вопрос в гугле, но у меня не получилось. Надеюсь, здесь кто-нибудь подскажет. Имеется на страничке div, который требуется обновлять по клику на кнопку\ссылку, а именно - подгружать в него содержимое файла (page_content.php, например). Реализую это так: <a href="#" onclick="$('#content').load('content_variant/bd_tp.php');"> Соответственно, содержимое div c id=content действительно обновляется, однако для него как бы не существует следующая строка: <script type="text/javascript" src="js/global.js"></script>, которая расположена в начале страницы (корневой), содержащей этот div. Если прописать <script type="text/javascript" src="js/global.js"></script>непосредственно и в файле bd_tp.php (а его мы подгружаем в div), то в самом div всё работает как надо... но вот для элементов, расположенных вне этого div на корневой странице, все обработчики событий начинают выполняться два раза. Как загрузить в div содержимое файла (результат выполнения php-скрипта) так, чтобы для нового содержимого также работало то, что определяет <script type="text/javascript" src="js/global.js"></script> |
Цитата:
|
Deff, спасибо за ответ.
Проблема в том, что в подгружаемом содержимом div'a нет скриптов. Вообще нет. Нечего заменять. Там есть <td><tr>... определённых классов, стилей... Я полный чайник в html,css и javaScript, но понимаю так: при загрузке первоначальной страницы, пробегаемся по всем элементам определённых классов и навешиваем на них определённые скрипты\обработчики. Соответственно, при обновлении содержимого div, для него, содержимого, этот пробег не осуществляется. А можно подробнее про первый вариант, с src? |
Цитата:
Заменять src в подгружаемом скрипте, тогда скрипт перезапускается Поскольку кеширование, то перезапуск скрипта идёт без повторной подгрузки |
Deff, так ведь это аналогично этому:
Цитата:
erlcat, вам однозначно придется модифицировать файл global.js, он был не расчитан на ajax-подгрузку. |
Часовой пояс GMT +3, время: 07:39. |