ixley
@ixley

Как победить Uncaught TypeError: $notifications.notify is not a function?

На сайте есть форма для комментариев:
<form class="well form" id="comment-form" action="/comment/add" method="post">
<input type="hidden" value="d595dc4e2ad830bf211a9c2f0d5297c9ca035ba5" name="TOKEN">
                <div class="alert alert-block alert-danger" id="comment-form_es_" style="display:none"><p>Необходимо исправить следующие ошибки:</p>
<ul><li>dummy</li></ul></div>                <input name="Comment[model]" id="Comment_model" type="hidden" value="Product">                <input name="Comment[model_id]" id="Comment_model_id" type="hidden" value="1554">                <input name="Comment[parent_id]" id="Comment_parent_id" type="hidden">                <input type="hidden" value="/store/" name="redirectTo" id="redirectTo">
                <input name="e546525faf517963bb35bdb74714dd5c" style="position:absolute;display:none;visibility:hidden;" id="e546525faf517963bb35bdb74714dd5c" type="text">
                <input style="position:absolute;display:none;visibility:hidden;" name="Comment[comment]" id="Comment_comment" type="text" maxlength="150">
                
                <div class="row">
                    <div class="col-sm-12">
                        <div class="form-group">
                            <label for="Comment_text" class="required">Комментарий <span class="required">*</span></label>                            <textarea class="form-control" rows="3" style="resize: vertical;" name="Comment[text]" id="Comment_text"></textarea>                            <div class="help-block error" id="Comment_text_em_" style="display:none"></div>                        </div>
                    </div>
                </div>

                                <div class="row">
                    <div class="col-sm-12">
                        <button class="btn btn-primary" id="add-comment" type="submit" name="add-comment">
                            <i class="glyphicon glyphicon-comment"></i>
                            Добавить комментарий                        </button>
                        <button class="btn btn-default" id="close-comment" type="button" style="display: none">
                            Отмена                        </button>
                    </div>
                </div>
                </form>


Если форма пустая, но нажал Добавить комментарий, появляется:
comments.js:62 Uncaught TypeError: $notifications.notify is not a function
    at HTMLFormElement.<anonymous> (comments.js:62)
    at HTMLFormElement.dispatch (jquery.min.js:3)
    at HTMLFormElement.r.handle (jquery.min.js:3)


Содержание comments.js 62 строка
if (!$text.val()) {
                $notifications.notify({message: {text: 'Комментарий пуст =('}, 'type': 'danger'}).show();
                return;
            }


Если добавляю комментарий, то он должен появляться без обновления страницы, но вместо этого появляется ошибка:
Uncaught TypeError: $notifications.notify is not a function
    at Object.success (comments.js:67)
    at j (jquery.min.js:2)
    at Object.fireWith [as resolveWith] (jquery.min.js:2)
    at x (jquery.min.js:4)
    at XMLHttpRequest.b (jquery.min.js:4)


Содержание 67 строки:
$.post($form.attr('action'), $form.serialize(), function (response) {
                $notifications.notify({
                    message: {text: response.data.message},
                    'type': response.result ? 'success' : 'danger'
                }).show();


Jquery обновлял, но тщетно :-(
  • Вопрос задан
  • 1011 просмотров
Решения вопроса 1
@Arik
откуда-то взяли код? скорее всего не подключили какую-то библиотеку notify, она должна показывать различные сообщения, варианты решения:
- подключить либу
- самому реализовать метод notify()
- убрать эти вызовы
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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