如何使 parsleyjs 仅在模糊时触发验证(对于验证失败的字段)
How to make parsleyjs only trigger validation on blur (for a field that has already failed validation)
我正在尝试弄清楚如何让 parsleyjs 仅针对 已经 验证失败的字段触发模糊验证。
见http://jsfiddle.net/billyroebuck/zbmv2d3w/
标记:
<form id="myform">
<label for="email">Email</label>
<input type="email" name="email"
data-parsley-required="true"
data-parsley-type="email"
data-parsley-custom
data-parsley-trigger="blur"
/>
<input type="submit" />
</form>
JavaScript:
window.Parsley.addValidator('custom',
function (value, requirement) {
console.log('custom validation triggered');
sleepFor(3000); // simulate a delay (testing only)
if (value == 'test@test.com') {
console.log('custom validation failed');
return false;
}
console.log('custom validation passed');
return true;
}, 32)
.addMessage('en', 'custom', 'custom validation failed');
$('#myform').parsley();
function sleepFor(sleepDuration) {
console.log('pretend this takes a while...');
var now = new Date().getTime();
while (new Date().getTime() < now + sleepDuration) { /* do nothing */
}
}
parsleyjs 版本 2.2.0-rc1
电子邮件字段有验证规则要检查:
- 提供了一个值,
- 输入的值是一个有效的电子邮件地址,
- 一些自定义规则(假设这是一个 AJAX 请求)
我将此字段的 parsley-trigger 属性设置为模糊。
步骤:
- 打开控制台
- 在上面的电子邮件字段中输入 "a@b.com",然后按 Tab
- 注意触发了自定义验证(好)
- 在电子邮件字段中输入 "xyz",然后按 Tab
- 注意欧芹类型验证开始(好)
- 在电子邮件字段中输入 "xyz@test.com" 查看控制台
- 请注意,自定义验证在输入变为
有效电子邮件(在这种情况下,当您在 .com 中按字母 c 时)与
模糊 :(
如何确保仅在无效字段的模糊事件上触发验证?
提前致谢!
恐怕目前没有这样的选项。想法是尽快删除错误消息,似乎每个人都喜欢这个。
我正在尝试弄清楚如何让 parsleyjs 仅针对 已经 验证失败的字段触发模糊验证。
见http://jsfiddle.net/billyroebuck/zbmv2d3w/
标记:
<form id="myform">
<label for="email">Email</label>
<input type="email" name="email"
data-parsley-required="true"
data-parsley-type="email"
data-parsley-custom
data-parsley-trigger="blur"
/>
<input type="submit" />
</form>
JavaScript:
window.Parsley.addValidator('custom',
function (value, requirement) {
console.log('custom validation triggered');
sleepFor(3000); // simulate a delay (testing only)
if (value == 'test@test.com') {
console.log('custom validation failed');
return false;
}
console.log('custom validation passed');
return true;
}, 32)
.addMessage('en', 'custom', 'custom validation failed');
$('#myform').parsley();
function sleepFor(sleepDuration) {
console.log('pretend this takes a while...');
var now = new Date().getTime();
while (new Date().getTime() < now + sleepDuration) { /* do nothing */
}
}
parsleyjs 版本 2.2.0-rc1
电子邮件字段有验证规则要检查:
- 提供了一个值,
- 输入的值是一个有效的电子邮件地址,
- 一些自定义规则(假设这是一个 AJAX 请求)
我将此字段的 parsley-trigger 属性设置为模糊。
步骤:
- 打开控制台
- 在上面的电子邮件字段中输入 "a@b.com",然后按 Tab
- 注意触发了自定义验证(好)
- 在电子邮件字段中输入 "xyz",然后按 Tab
- 注意欧芹类型验证开始(好)
- 在电子邮件字段中输入 "xyz@test.com" 查看控制台
- 请注意,自定义验证在输入变为 有效电子邮件(在这种情况下,当您在 .com 中按字母 c 时)与 模糊 :(
如何确保仅在无效字段的模糊事件上触发验证?
提前致谢!
恐怕目前没有这样的选项。想法是尽快删除错误消息,似乎每个人都喜欢这个。