Ajax JQuery: при нажатии динамически созданные элементы не работают - PullRequest
0 голосов
/ 15 января 2020

Имеется запрос Ajax, который создает все элементы внутри класса c.

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

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

JQuery и html элементы, показанные ниже.

JQuery Код клика:

$(".content").on("click",".like",function()

Html (несколько классов "post" создаются только в одном примере, показанном ниже):

<div class="content"> //Static

  <div class="post">

    <div class="post-text">Some text goes here</div>

      <div class="post-action">

         <input type="button" value="Like" id="like_1_m5s9hr9vfef3ne6ubb533kqhr1" class="like">

         <span id="likes_1_m5s9hr9vfef3ne6ubb533kqhr1">12</span> //id correctly starts with likes not Like

       </div>

    </div>

</div>

Ответы [ 2 ]

1 голос
/ 15 января 2020

вам просто нужно использовать $ (this), чтобы вы могли определить, какой класс .like вы щелкнули. пример ниже

$(".content").on("click",".like",function(){
    var id = $(this).attr("id"); // get value of id
    alert(id); // alert value
    $(this).css("color","red"); // change color
});
1 голос
/ 15 января 2020

Почему бы не использовать javascript здесь вместо jQuery?

<input type="button" value="Like" id="like_1_m5s9hr9vfef3ne6ubb533kqhr1" class="like" onclick="youfunctionname('like_1_m5s9hr9vfef3ne6ubb533kqhr1');">

При создании содержимого Dynami c было бы проще написать onclick непосредственно перед добавлением элемента в html. Кроме того, вы можете изменить вызов функции в своем клике (например: Pass ID или любые другие полезные данные, связанные с другими действиями).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...