2015-05-11 5 views
0

С помощью настраиваемого удаленного валидатора, как вы должны избавиться от сообщений об ошибках?Сообщение об ошибке удаленного валидатора

Использование data-parsley-remote-validator = 'mycustom' в поле даст вам сообщение об ошибке «неопределенный асинхронный валидатор» консоли, если только валидатор не добавлен в DOM ready i.e, а не внутри другой функции. Однако, если он добавлен в DOM ready, тогда петля автоматически вызывает его, что не должно произойти до отправки/изменения или того, что вы еще не установили.

я могу сделать что-то вроде этого, но вид поражений объект, имеющий петрушка вызвать валидатор на изменения:

$('#signUpForm').on('submit', function() { 
//add the attribute here to avoid the initial error message 
    $('#exampleInputEmail1').attr('data-parsley-remote-validator', 'validateEmail'); 
//then add the custom validator 
    $('#exampleInputEmail1').parsley() 
    .addAsyncValidator('validateEmail', function (xhr) { 
      if(xhr.status == '200') { 
       return 200; 
      } 
      // return the error message if email is taken 
      else if(xhr.status == '404') { 
      response = '<ul class="errorlist"><li>That email has already been taken, please try another</li></ul>' 
      $('#errorResponse').html(response); 
      } 
     }, '/api/v1/email/available', { "type": "POST", "dataType": "json", "data": data } 
    ); 
}); 

ответ

0

Ваш асинхронный валидатор не должен установить сообщение об ошибке сам, он должен просто return, если значение проверяется или нет. Сообщения об ошибках добавляются с другим API и/или указаны как атрибуты данных, проверьте документ.

+0

Хорошо, я могу удалить это, но у меня все еще будет проблема с сообщениями об ошибках в консоли. AddAsyncValidator добавляет и вызывает, а не просто добавляет, что проблема. Какое правильное использование? благодаря –

2

Для тех, кто приехал сюда для сообщения пользовательских ошибок дистанционного валидатор в Parsley.js,

Вы можете добавить data-parsley-remote-message к элементу,

<input type="text" data-parsley-remote-validator="my_remote_validator" data-parsley-remote-message="Custom error message only for remote validation on this element" > 

Испытано с Parsley.js - Версия 2.3.11