Как заставить единственную ошибку, используя проверку JQuery? - PullRequest
2 голосов
/ 30 июня 2010

Я использую плагин проверки jQuery в моей форме. Я устанавливаю основные правила и сообщения через JavaScript следующим образом:

   rules:{
        "billing.firstname":{
            required:true
        },
    messages:{
        "billing.firstname":"First name is required."}

У меня есть дополнительное требование использовать функцию javascript для отображения поля как недопустимого с указанным сообщением, которое я выполняю, используя validator.addMethod, затем вызываю validate (). Element (element) для рассматриваемого поля.

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

Есть ли способ принудительной проверки одного правила для одного элемента или, альтернативно, каким-либо образом получить доступ к назначенному сообщению, чтобы я мог временно его изменить?

Для справки, общая цель состоит в том, чтобы на моей странице были недоступны некоторые другие функции типа ajax, и мне нужно разрешить им использовать функцию JS для ручной установки недопустимого состояния поля и сообщения.

Заранее спасибо -

б

1 Ответ

1 голос
/ 01 июля 2010

К вашему сведению - я понял, как это сделать. Это через метод, который не документирован для плагина, но был единственным способом найти доступ к изначально установленным сообщениям.

Я сейчас использую

form.validate().settings.messages[elementId]

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

б

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