我有一个带有textfield和textarefield的表单,我提供了allowBlank:两列都为false,但我需要在表单提交时显示红色错误设计和空白错误,而不是在此之前。如何做到?
qkf9rpyu1#
表单域有两个布尔值配置,validateOnBlur和validateOnChange。如果您将它们设置为false,则在用户输入时将不会验证域。在这种情况下,您必须添加一个代码,例如,到您的提交按钮,以检查验证错误。Ext.form.Basic有isValid和hasInvalidField方法,您可以调用,第一个方法标记验证错误,第二个方法不标记。
validateOnBlur
validateOnChange
false
Ext.form.Basic
isValid
hasInvalidField
f1tvaqid2#
@Peter Koltai有经典的正确答案。对于modern,您应该用途:
validateTextfield(field) { test... if(!valid){ field.setErrorMessage('bad decision'); } }, onBeforeSubmit() { const form = this.getView(), values = form.getValues(), isTextFieldValid = this.validateTextfield(values.fromTextField); return isTextFieldValid; } onSubmit() { const isValid = this.onBeforeSubmit(); if(!isValid) return; doMySubmission(); }
2条答案
按热度按时间qkf9rpyu1#
表单域有两个布尔值配置,
validateOnBlur
和validateOnChange
。如果您将它们设置为false
,则在用户输入时将不会验证域。在这种情况下,您必须添加一个代码,例如,到您的提交按钮,以检查验证错误。Ext.form.Basic
有isValid
和hasInvalidField
方法,您可以调用,第一个方法标记验证错误,第二个方法不标记。f1tvaqid2#
@Peter Koltai有经典的正确答案。
对于modern,您应该用途: