@s2sk1337

Выдает ошибку на .on(). Как пофиксить?

Сначала ломал голову почему .click не хотел работать для элемента, потом доперло что элемент подгружается потом динамически, а событие прописано до этого. Пошел в гугл и нашел что нужно использоваться для такого
$('где идет поиск').on('click', 'что ищем', function(){
...
});


Переделал как нужно, но вот браузеру это не нравиться и он ругается на эту строку -

V1u_0weiHF8.jpg

Так и не дошло почему... Сам код:
$(document).ready( // Когда документ загрузился
    
    function()
    {
        $('.main_content').on('click', '.button_send',
            function()
            {
                $.ajax(
                    {
                        url: "/msg",
                        type: "POST",
                        data: (
                            {
                                toWhom: $('#towhom_id').text(),
                                text: $('.input_message').val(),
                                act: "send_message"
                            }
                        ),
                        dataType: "text"
                    }

                );
            }
        );
    }
);
  • Вопрос задан
  • 146 просмотров
Решения вопроса 1
link_web
@link_web
Magento, Laravel, Zend, Shopify, Prestashop, WP
Сразу уберите вот эту функцию. Она здесь вообще не нужна

Если нет, то:
Какая версия Jquery? Метод on ввели только с JQ > 1.7 попробуйте заменить на более новую версию.
Если это Вам не поможет , то попробуйте метод bind

Удачи
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Ifelseapps
@Ifelseapps
Frontend developer/JavaScript developer
Обновите версию+используйте делегирование, т.к. элемент подгружается после навешивания обработчика. Почитайте подробнее jquery.page2page.ru/index.php5/On
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы