Есть скрипт:
while ($result= mysqli_fetch_assoc($query)) {
print '<div class="friendList-ask">
<a class="btn-main" href="#">Done</a>
</div>';
}
Данный HTML код попадает на страницу с помощью ajax
:
$.ajax({
url: 'search.php',
success: function (data) {
$('.userList').html(data);
}
})
Проблема в том что после попадания данного кода на страницу, к нему не получается обратиться с помощью jQuery
:
$(".friendList-ask .btn-main").on("click", function () {
event.preventDefault();
alert("Hello");
})
Тоесть данный код не работает. jQuery
скрипт не находит его.
В чем же проблема? Как ее решить?
Это класическая тема, на момент выполения скрипта
$(".friendList-ask .btn-main").on("click", function () {
элемент .friendList-ask .btn-main не существует, событие привязать не к чему.
Нужно использовать всплытие событий и закрепить его на внешнем постоянном враппере над .friendList-ask или на document,вот так:
$(document).on("click", ".friendList-ask .btn-main", function(){ ..... })
Если событие на вновь созданном элементе, которого изначально не было - должна быть привязка к уже существующему элементу, который точно не изменится.
$('#container_body').on('click', '.friendList-ask .btn-main', function(){
event.preventDefault();
alert("Hello");
});
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как в таймере обратного отсчета T(-) Countdown для WordPress можно сделать, чтобы когда обратный отсчет подошел к нулю, то таймер каждый раз автоматически...
Есть объект GoogleMap, находящийся в MapView и задача рисовать в нем кольца с некоторой прозрачностьюПричем кольца должны быть построены по метрам