Отображать ошибки петрушки во всплывающей подсказке начальной загрузки
-
21-12-2019 - |
Вопрос
Я использую петрушку 2.0.0-rc5 и хочу отображать сообщения об ошибках во всплывающей подсказке начальной загрузки.Я использую «петрушку: поле: ошибка», но событие срабатывает до того, как ошибка отображается в контейнере ошибок, и я не могу обнаружить ошибку.Кто-нибудь знает, как получить сообщение об ошибке для каждого поля?
$.listen('parsley:field:error', function (e) {
dataParsleyId = e.$element.attr('data-parsley-id');
errorMsg = 'Error: ' + $('#parsley-id-'+dataParsleyId).text();
e.$element.attr('data-original-title', errorMsg);
e.$element.tooltip('show');
});
Решение
Гийом Потье, автор петрушки, добавил ParsleyUI.getErrorsMessages(parsleyFieldInstance)
метод, который вернет массив сообщений об ошибках.Он доступен в основной ветке в github и будет выпущен в следующей стабильной версии.
У меня это отлично работает, и это мой пример кода:
window.Parsley.on('field:error', function (fieldInstance) {
fieldInstance.$element.popover({
trigger: 'manual',
container: 'body',
placement: 'right',
content: function () {
return fieldInstance.getErrorsMessages().join(';');
}
}).popover('show');
});
window.Parsley.on('field:success', function (fieldInstance) {
fieldInstance.$element.popover('destroy');
});
Не связан с StackOverflow