【发布时间】:2014-01-15 21:07:37
【问题描述】:
如果能做这样的事情就好了
$('input.specific-field').parsley('error', 'this is a custom error message');
...但我想这是不可能的?
我怎么能做到这样?
【问题讨论】:
标签: javascript jquery html css parsley.js
如果能做这样的事情就好了
$('input.specific-field').parsley('error', 'this is a custom error message');
...但我想这是不可能的?
我怎么能做到这样?
【问题讨论】:
标签: javascript jquery html css parsley.js
这就是我为 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。
【讨论】:
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)。
【讨论】:
data-parsley-error-message="my message"
为我工作 http://parsleyjs.org/doc/index.html#ui-for-javascript 了解更多信息。
【讨论】:
也许是这样的:
$('input.specific-field').parsley().UI.manageError({error: 'this is a custom error message'});
【讨论】:
$('...').parsley().UI.manageErrorContainer().addError({err: 'Name cannot be blank'})
以上示例似乎适用于 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!'});
【讨论】: