【问题标题】:Showing serverside validation errors in extjs在 extjs 中显示服务器端验证错误
【发布时间】:2018-01-12 07:12:21
【问题描述】:

对于表单字段,我们可以使用validatorvalidation 函数来验证并显示extjs 中的错误。如何显示服务器端验证的类似错误?即验证发生在后端,如果满足某个条件,则应显示错误。


我尝试过使用markInvalid("message"),但这只会突出显示该字段并且不显示消息,并且当用户点击该字段时,突出显示也会消失。 任何建议表示赞赏。谢谢。

【问题讨论】:

    标签: javascript validation extjs


    【解决方案1】:

    markInvalid 实际上是官方的方式。默认情况下,消息显示在工具提示中,您可以通过msgTarget: 'under'更改。

    如果你想保留错误信息,那么你必须问自己,直到什么时候。例如,当我更改字段中的值时,它应该不再显示错误消息。

    要在值更改之前保留服务器的消息,您必须在字段中添加自定义验证器:

    validator: function(val) {
        if(this.invalidValue && val==this.invalidValue) return this.invalidMsg;
        return true;
    }
    

    然后,当消息从服务器返回时,调用:

    field.invalidValue = field.getValue();
    field.invalidMsg = msg;
    field.validate();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-08
      • 2017-03-03
      • 2019-09-08
      • 2020-12-26
      • 2021-11-11
      • 1970-01-01
      • 1970-01-01
      • 2017-08-18
      相关资源
      最近更新 更多