Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Не работает JS, если подгружаю код из файла (https://javascript.ru/forum/events/42377-ne-rabotaet-js-esli-podgruzhayu-kod-iz-fajjla.html)

pashin76 23.10.2013 21:43

Не работает JS, если подгружаю код из файла
 
так работает
$("#btn1").click(function()
       {
        alert("Работает!");
        });


<input type="button" value="Отправить сообщение" id="btn1">


а если подгружаю html (
<input type="button" value="Отправить сообщение" id="btn1">
) из файла, то не работает
$("#link").click(function (event){
         event.preventDefault()
         $("#popup").html(" ").load("/test/popup2.html");
$("#btn1").click(function()
       {
        alert("Работает!");
        });
})

Почему?

a_l 24.10.2013 08:33

Цитата:

Почему?
Потому что назначаете событие на элемент, которого нет. Используйте .on():
$('#popup').on('click', '#btn1', function(){
  alert('Работает!');
});

Skipp 24.10.2013 09:23

Дополню:
Скрипт загружается и выполняется быстрее, чем формируется страница, когда вы пытаетесь установить этот обработчик события элементов с таким id ещё нету.

pashin76 24.10.2013 10:25

Спасибо, заработало :)


Часовой пояс GMT +3, время: 09:24.