2015-05-06 2 views
3

Я написал код, который при нажатии кнопки добавляет новый твит (div) в список div. См. Сокращенный код ниже. Теперь, даже если новый div имеет все те же классы, что и другие div. Он не срабатывает при нажатии.Jquery On Click Method Не работает для недавно добавленного Div

Как я могу использовать метод click jquery для новых добавленных div?

$('.buttonClass').on('click', function() { 

    .... 
       $newTweet.insertAfter('button'); 
    }); 



$('.douglascalhoun').on('click', function() { 
      $("div").slideToggle(); 
      $("div.douglascalhoun").slideDown(); 
     }); 
+0

@ShaunakD Извините, я просто проверил его. –

+0

Мне нравится ответ Милинда ниже, просто попробовал, и он, похоже, работает. – realsimonburns

ответ

3

Вы должны использовать делегирование событий для прикрепления события динамически генерироваться элементы:

$('body').on('click', '.douglascalhoun',function() { 
     $("div").slideToggle(); 
     $("div.douglascalhoun").slideDown(); 
    }); 
+0

Спасибо Milind! Цените это - это работает :) – realsimonburns

+0

@realsimonburns: рад, что это помогает. :) –

0

за занавесками событие делегации работает следующим образом для динамически создаваемых элементов

$(staticAncestors).on(eventName, dynamicChild, function() { 
    // Your Function 
}); 
+0

Полезно знать - спасибо! – realsimonburns

0

Используйте ниже кода, когда вы выполняете события при добавлении динамически.

$(document).on('click', 'selector', function(){ 
    //from dynamic div 
}) 
Смежные вопросы