Validatr как настроить свои сообщения об ошибках
В принципе это и есть вопрос. Как в этом валидаторе http://jaymorrow.github.io/validatr/применить свои сообщения об ошибках.
Бился и с этой версией, и с версией помоложе. НИЧЕГО. Выводятся дефолтные сообщения браузера. В фаерфоксе на английском, в хроме на русском, в опере ничего почему-то (просто подсветка). Вот накопал: var target = e.target, $target = $(target), options = this.options, msg = target.getAttribute('data-message') || $.data(target, 'validationMessage'), error = $(options.template.replace('{{message}}', msg)); По идее код ошибки должен быть в target.getAttribute('data-message') Но эта переменная пустая. В версии 3 есть $.fn[widgetName].defualtOptions = { customMessages: true, Но параметр ни на что не влияет и нигде не используется. |
По вашей ссылке открытый исходный код :)
да, такой опции просто нет. Зато есть такой код: $.validatr.messages = { checkbox: 'Please check this box if you want to proceed.', color: 'Please enter a color in the format #xxxxxx', email: { single: 'Please enter an email address.', multiple: 'Please enter a comma separated list of email addresses.' }, pattern: 'Please match the requested format.', radio: 'Please select one of these options.', range: { base: 'Please enter a {{type}}', overflow: 'Please enter a {{type}} greater than or equal to {{min}}.', overUnder: 'Please enter a {{type}} greater than or equal to {{min}}<br> and less than or equal to {{max}}.', invalid: 'Invalid {{type}}', underflow: 'Please enter a {{type}} less than or equal to {{max}}.' }, required: 'Please fill out this field.', select: 'Please select an item in the list.', time: 'Please enter a time in the format hh:mm:ss', url: 'Please enter a url.' }; Не об этом ли вы спрашивали? Кроме того, в директории l10n пример локализации. Весьма вероятно, в вашем случае он будет крайне полезен. |
Смотрел пример. Так же не реагирует на изменение в приведенном коде.
Вернее одни одни ошибки перекрываются, другие нет. |
какие именно не перекрываются? попробуем воспроизвести
|
http://jsbin.com/UQAqOzi/2/watch?html,js,output
Опера вообще ничего не отображает. Фаерфокс для одних полей отображает то, что в списке ошибок, для других, сообщение по-умолчанию -- Например, для поля Number Заполните это поле , то что указано в конфигурации Для поля email Please fill out this field. Сообщение браузера по-умолчанию Опера, как говорил не отображают ничего, даже на офф. сайте в тестах. Выводятся пустые красные рамки. Хром начисто игнорирует все изменения в i10n/en.js и выводит свои сообщения об ошибках. Наверное, библиотека еще совсем сырая. |
Часовой пояс GMT +3, время: 16:16. |