我有一个表单,其中一些字段需要在服务器端进行验证。
提交表单时,服务器会验证这些字段的值,如果验证失败,则服务器返回 success:false(以及验证失败的每个字段的名称和错误消息)。
现在,我需要将此类字段显示为“无效”,并在它们周围应用相同的红色边框,如果客户端验证失败,这是由 ExtJS 默认完成的。
我尝试使用以下方法:
Ext.getCmp('fieldId').markInvalid() 和 invalidCls:'x-form-invalid-field'
我在 form.submit 的“失败”回调函数中使用了上述语句。这些语句会被调用,但不会对此类字段产生任何影响。
因此任何人都可以指导以下内容:
如何在自定义验证失败时将字段标记为无效并在其周围应用相同的效果(具有红色边框)?
提前致谢。
最佳答案
从服务器获取错误信息
Ext.getCmp('your_form_id').getForm().findField('field_id_or_field_name').markInvalid('server_error_message');
关于javascript - ExtJS 4 - 如果自定义验证失败,如何将表单字段标记为无效并在其周围显示红色边框(ExtJS 默认完成)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7723041/