如果有可能做
这样的事情会很棒$('input.specific-field').parsley('error', 'this is a custom error message');
......但我想这是不可能的?
我怎么能得到这样的东西?
答案 0 :(得分:14)
Parsley有一些添加自定义错误消息的内置方法。
var specificField = $('input.specific-field').parsley();
# add the error
window.ParsleyUI.addError(specificField, "myCustomError", 'this is a custom error message');
# remove the error
window.ParsleyUI.removeError(specificField, "myCustomError");
此处有更多信息:http://parsleyjs.org/doc/index.html#psly-ui-for-javascript
编辑:This method is now deprecated(感谢@giraff)。
答案 1 :(得分:2)
也许这个:
$('input.specific-field').parsley().UI.manageError({error: 'this is a custom error message'});
答案 2 :(得分:2)
这就是我为Parsley 2.8工作的方式:
field.parsley().removeError('customValidationId');
field.parsley().addError('customValidationId', {message: "myCustomError"});
http://parsleyjs.org/doc/index.html#psly-ui-for-javascript
这是一个交钥匙解决方案,我用它来显示从AJAX到其ID标识的字段的错误:
// Removing errors from previous AJAX call
if ($('.js_error').length) {
$('.js_error').parsley().removeError('myError');
$('.js_error').removeClass('.js_error');
}
// Showing errors from current AJAX call
for (var idField in ajaxErrors) {
var msg = ajaxErrors[idField];
var field = $('#field_' + idField);
if (field.length) {
field.addClass('js_error');
field.parsley().removeError('myError');
field.parsley().addError('myError', {message: msg});
}
}
此解决方案不会阻止表单提交(因为它只在UI中显示错误消息,因此不会触及表单验证逻辑)。这就是Parsley.js favors custom validators。
的原因答案 3 :(得分:2)
data-parsley-error-message="my message"
为我工作了 http://parsleyjs.org/doc/index.html#ui-for-javascript了解更多信息。
答案 4 :(得分:0)
以上示例似乎适用于Parsley 2.0 我坚持使用旧版本,但是使用自定义错误来处理以下内容。
el = $('#my_input').parsley();
el.manageErrorContainer(); // set up the error list container
$(el.ulError).empty() // clear any previous errors if you want..
el.addError({error: 'Hey, mind yerself!'});