我有一个 QBO3 表单,我添加了自定义 javascript 以进行验证。当我使用以下方法向我的元素添加“验证失败”类时:
set('class','Validation-Failed')
这会导致 UI 行为正确。但是,单击另一个字段会导致分类为“验证通过”替换“验证失败”。
某些事情正在覆盖特定的失败。
验证类由 UI 的 Mootools FormValidator类注入;您是在“幕后”操纵它们,而不是使用适当的验证器。
QBO3 提供了一堆内置的验证器,在 qbo.Validation.js 中提供了大量详细信息。
如果我们不提供您需要的功能,您可以轻松制作 JS 来做任何您想做的事情,并将其绑定到表单验证中,如下所示:
<input type="text" class="myCustomValidator" .../>
并包括以下 javascript:
Form.Validator.addAllThese([
['myCustomValidator', {
errorMsg: function (element, props) {
return 'Please make this message more useful to the end user.'
},
test: function (element) {
return (element.value =- "MyExactValue");
}
}]
]);