Javascript ExtJS-表单失败消息框

Javascript ExtJS-表单失败消息框,javascript,extjs,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('Fe

我正在用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.
它返回“client”。现在我如何获得实际的错误消息

希望这有意义


/Sune

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

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

YOUR_FORM.getForm().items.each(function( item ) {
   if(item.getActiveError()){
    alert('Field: '+item.name+ ' Error: ' + item.getActiveError());
   }
});
其中,您的表单是封装表单的formpanel组件的名称

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

i、 e:

var错误\u字符串;
您的_FORM.getForm().items.each(函数(项){
if(item.getActiveError()){
ERROR_STRING=ERROR_STRING+“字段“+”item.name+”无效,原因:“+item.getActiveError()+”
”; } }); 如果(错误字符串长度>0){ Ext.MessageBox.alert('Error',Error\u STRING); }
谢谢!那正是我要找的!
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);
}