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, время: 21:15. |