Parsley - 当字段为空时在必需消息上使用错误消息
Parsley - Error message being used over Required Message when field is empty
我已经为 parsley 添加了一个自定义验证器,它按预期工作,但我遇到的唯一问题是当字段留空时 data-parsley-error-message
在 data-parsley-required-message
上使用。
如何避免这种情况,以便在验证失败时使用错误消息,并在字段为空时显示所需的消息。
当前代码:
<input class="form-control" id="FirstName" name="FirstName" maxlength="20" data-parsley-required-message="Your first name was missing." data-parsley-validate-non-ascii="" data-parsley-error-message="Invalid Character Entered" data-parsley-trigger="blur" required="" data-parsley-id="3137" type="text">
window.ParsleyValidator.addValidator('validateNonAscii', function (value) {
return Validate(value);
});
data-parsley-error-message
将始终具有优先权。请改用 data-parsley-validate-non-ascii-message
。
根据 Marc-André Lafortune 的建议,我通过实施自定义验证错误消息设法找到了自己的答案:
我将 HTML 输入更新为以下内容:
<input type="text" class="form-control" id="FirstName" name="FirstName" maxlength="20" data-parsley-required-message="Your first name was missing." data-parsley-validate-non-ascii="" data-parsley-validate-non-ascii-message="Invalid Character Entered" data-parsley-trigger="blur" required="" data-parsley-id="5021">
然后使用事件侦听器,我能够将错误消息从输入添加到 Parsley;现在在输入无效字符时显示验证错误,在字段为空时显示所需消息。
$.listen('parsley:field:error', function (fieldInstance) {
var validateNonAsciiMessage = fieldInstance.$element.data('parsley-validate-non-ascii-message');
if (validateNonAsciiMessage !== undefined) {
window.ParsleyValidator.addMessage('en', 'validateNonAscii', validateNonAsciiMessage);
}
});
window.ParsleyValidator.addValidator('validateNonAscii', function (value) {
return Validate(value);
});
我已经为 parsley 添加了一个自定义验证器,它按预期工作,但我遇到的唯一问题是当字段留空时 data-parsley-error-message
在 data-parsley-required-message
上使用。
如何避免这种情况,以便在验证失败时使用错误消息,并在字段为空时显示所需的消息。
当前代码:
<input class="form-control" id="FirstName" name="FirstName" maxlength="20" data-parsley-required-message="Your first name was missing." data-parsley-validate-non-ascii="" data-parsley-error-message="Invalid Character Entered" data-parsley-trigger="blur" required="" data-parsley-id="3137" type="text">
window.ParsleyValidator.addValidator('validateNonAscii', function (value) {
return Validate(value);
});
data-parsley-error-message
将始终具有优先权。请改用 data-parsley-validate-non-ascii-message
。
根据 Marc-André Lafortune 的建议,我通过实施自定义验证错误消息设法找到了自己的答案:
我将 HTML 输入更新为以下内容:
<input type="text" class="form-control" id="FirstName" name="FirstName" maxlength="20" data-parsley-required-message="Your first name was missing." data-parsley-validate-non-ascii="" data-parsley-validate-non-ascii-message="Invalid Character Entered" data-parsley-trigger="blur" required="" data-parsley-id="5021">
然后使用事件侦听器,我能够将错误消息从输入添加到 Parsley;现在在输入无效字符时显示验证错误,在字段为空时显示所需消息。
$.listen('parsley:field:error', function (fieldInstance) {
var validateNonAsciiMessage = fieldInstance.$element.data('parsley-validate-non-ascii-message');
if (validateNonAsciiMessage !== undefined) {
window.ParsleyValidator.addMessage('en', 'validateNonAscii', validateNonAsciiMessage);
}
});
window.ParsleyValidator.addValidator('validateNonAscii', function (value) {
return Validate(value);
});