微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-ExtJS-表单失败消息框

我在ExtJS中构建应用程序,并且我有一个带有提交失败功能的表单,如下所示:

buttons:[{
 text: 'Bestil',
 id:'button_bestil',
 width:85,
 handler: function(){
  create.getForm().submit({
   success: function(f,a){
    //do stuff!
   },
   failure: function(f,a){
    Ext.Msg.alert('Fejl', 'Error');
   }
  });                     
 }
}] 

现在我想要的是从未正确填写的字段中显示错误的原因.

F.x.我有以下文本字段:

vtypeText:'Please type in valid email',
vtype:'email'

我发现我可以使用a.resultType.它返回“客户端”.现在如何获得实际的错误消息.

希望这有意义

/六月

解决方法:

根据我的收集-您想向用户报告所有无效字段的列表以及每个字段的原因?

这可以通过以下代码完成:

YOUR_FORM.getForm().items.each(function( item ) {
   if(item.getActiveError()){
    alert('Field: '+item.name+ ' Error: ' + item.getActiveError());
   }
});

其中YOUR_FORM是封装表单的formpanel组件的名称.

这样做是循环遍历表单中的每个字段,如果有错误(无效),它将向用户报告.出于用户的理智,您可能希望将每个错误行添加到变量,然后在末尾生成一条消息,而不是分别报告每个消息.

即:

var ERROR_STRING;
YOUR_FORM.getForm().items.each(function( item ) {
    if(item.getActiveError()){
  ERROR_STRING=ERROR_STRING+"The field '"+item.name+ "' is invalid, reason: " + item.getActiveError() + "<br />"; 
    }
});
if(ERROR_STRING.length>0){
    Ext.MessageBox.alert('Error',ERROR_STRING);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐