Как можно локализовать сообщения при использовании Parsley.addAsyncValidator? - PullRequest
0 голосов
/ 07 октября 2018

Допустим, я добавляю следующий асинхронный валидатор:

Parsley.addAsyncValidator('availableEmail', function (xhr) {
    return 200 === xhr.status;
}, '/available-email');

и использую его для ввода следующим образом:

<input
    id="email"
    type="email"
    name="email"
    data-parsley-remote
    data-parsley-remote-validator="availableEmail"
    data-parsley-remote-message="This email is unavailable"
> 

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

Вещи, которые я пробовал:

  1. Добавление свойства remote в один из файлов локализации: к сожалению, это делает это сообщение глобальным для всех асинхронных валидаторов, а я хочу толькоон применяется к валидатору available-email.
  2. Передача объекта параметров со свойством messages в метод addAsyncValidator, который, похоже, не работает (в отличие от метода addValidator).

1 Ответ

0 голосов
/ 09 октября 2018

Во-первых, здесь вам не нужен пользовательский asyncValidator.Название на самом деле не точное, на самом деле оно предназначено только для обработки результатов, которые не являются просто REST.

Лучше всего использовать пользовательский валидатор и вызывать $.ajax самостоятельно, например, в первом примере здесь .

...