addValidator() 函数接受一个优先级值作为第三个参数。大多数内置验证器的默认值为 30,除了“notblank”为 2、“regexp”为 64、“type-xxx”为 256 和“required”为 512。Parsley 停止验证最高优先级的失败测试(s)。这可以通过priorityEnabled 设置进行配置。为了一次只获得一个,您可以创建自定义验证器,每个验证器具有不同的优先级:
window.Parsley.addValidator('check3', function(val, req) {
return (val == whatever3(val, req));
// +--- Higher than check2
// v
}, 103).addMessage('en', 'check3', 'Failed check 3');
window.Parsley.addValidator('check2', function(val, req) {
return (val == whatever2(val, req));
// +--- Higher than check1
// v
}, 102).addMessage('en', 'check2', 'Failed check 2');
window.Parsley.addValidator('check1', function(val, req) {
return (val == whatever1(val, req));
// +--- Higher than many, lower than "required (512)" and "type-xxx (256)"
// v
}, 101).addMessage('en', 'check1', 'Failed check 1');