Следите за многократным нажатием любых кнопок с помощью JQuery

У меня на странице несколько кнопок:

<button id = "button-event-status-4" data-closed = "0" data-id = "4" class = "btn-danger">closed</button>
<button id = "button-event-status-10" data-closed = "1" data-id = "10" class = "btn-success">OPEN</button>

Мне нужно щелкнуть по любому из них (в любой момент может быть больше одного.

$(document).ready(function() {
    $("[id^='button-event-status-']").click(function() {
      alert ('it works');
    });
});

Код выше не работает. Что мне здесь не хватает?

Здесь отлично работает ... jsfiddle.net/6ssskbgf

Sean Wessell 20.03.2018 18:33

на самом деле это работает

Scaramouche 20.03.2018 18:33

есть ли способ как-то отладить это?

RWS 20.03.2018 18:46

вы как-то его отлаживаете, но он работает. если вы все еще хотите, вы можете console.info($("[id^='button-event-status-']"));, чтобы увидеть, возвращает ли селектор что-то или он пуст

Scaramouche 20.03.2018 18:50
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
4
30
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете просто присвоить один и тот же класс всем кнопкам и привязать событие щелчка к этому классу.

$(document).ready(function() {
    $(".sameclass").click(function() {
      alert ('it works');
    });
});


<button id = "button-event-status-4" data-closed = "0" data-id = "4" class = "btn-danger sameclass">closed</button>
<button id = "button-event-status-10" data-closed = "1" data-id = "10" class = "btn-success sameclass">OPEN</button>

Обновлять

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

 $(document).ready(function() {
        $(document).on("click",".sameclass",function() {
          alert ('it works');
        });
    });

Это мой буквальный синтаксис, но он не работает. есть способ отладить это?

RWS 20.03.2018 18:45

Не могли бы вы проверить в консоли, какую ошибку вы получаете?

Smit Raval 20.03.2018 18:49

Консоль чистая, но почему-то вообще не работает.

RWS 20.03.2018 19:07

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

RWS 21.03.2018 09:37

Проверьте мой обновленный ответ, он обязательно сработает. :) @RWS

Smit Raval 21.03.2018 10:12

Я уже это понял :) Пожалуйста, обновите свой ответ еще раз и обратите внимание, что это должен быть новый селектор $(document).ready(), и я отмечу ваш ответ как правильный

RWS 21.03.2018 10:16

Сделанный. @RWS Я добавил текст в свой ответ. :)

Smit Raval 21.03.2018 10:19

Другие вопросы по теме