Задать вопрос
@Denis9999

Почему не вешается обработчик события click?

5eecb59db3625646734775.png

Нужно повесить обработчик клика на кнопку, после нажатия на которую отправляется сообщение в чат.

$('.btnTelegramSend').on('click', function() {
  console.log('aaa4');
});

$('.material-icons').on('click', function() {
  console.log('aaa5');
});

$('.cts-open-chat').on('click', function() {
  console.log('aaa6');
});

$('.btn').on('click', function() {
  console.log('aaa7');
});

Я для теста написал несколько on click, работает только на кнопке, которой открывается чат (ааа6) . А на кнопку, которой отправляется сообщение - никак. Может, это из-за того, что чат написан на vue.js?
  • Вопрос задан
  • 862 просмотра
Подписаться 1 Средний Комментировать
Решения вопроса 2
@Kostik_1993
Web Developer
При чем тут Vue.js? Вы на нем пишите? Если да то тогда используйте его методы. Но судя по HTML Vue у вас только в тегах вопроса.

В jQuery чтобы навешать событие на элемент созданный js нужно писать по другому
$(document).on('click', '.btn', function () {
});
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
На момент, когда вешаете обработчик, нужная кнопка уже есть в DOM? Подозреваю, что нет. В таком случае надо вешать обработчик на существующий родительский элемент и использовать всплытие событий.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Just__Den
FULL STACK
$('body').on('click','.cts-open-chat',function(){
	// ...
})
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы