Pergunta

Eu estou usando a salsa 2.0.0-rc5 e deseja exibir as mensagens de erro em um bootstrap de dica de ferramenta.Eu estou usando "salsa:campo:erro", mas o evento é acionado antes que o erro é apresentado no erro-recipiente e eu não posso pegar o erro.Alguém com uma ideia de como eu recebo a mensagem de erro para cada campo?

$.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');

});
Foi útil?

Solução

Guillaume Potier, o autor de salsa, acrescentou ParsleyUI.getErrorsMessages(parsleyFieldInstance) método que irá retornar um array de mensagens de erros.Ele está disponível no branch master no github e seria lançado na próxima versão estável.

Isso funciona perfeitamente para mim e este é o meu código de exemplo:

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');
});
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top