日期:2014-05-16  浏览次数:20386 次

extjs表单验证问题
[size=24px][size=11px]在做表单验证时,如何使得文本输入框显示有错误时,提交按钮不能工作?[/size][/size]

------解决方案--------------------
引用:
引用:

按钮的handler中 自己写一个方法 循环调用面板中组建的validate方法 如果发现任何一个校验不通过 即返回false 不提交表单

我用field.setActiveError('error!');让文本框报错并提示了错误信息,同时也有红色边框线, 但是我用
var aa = Ext.getCmp('mytest');//m……

是true说明validate函数返回是true,跟你的红色边框线和错误提示都没关系,field.setActiveError('error!')也不能让validate返回false。你自己定义个validate函数就可以了
------解决方案--------------------
  var fp = new Ext.FormPanel({
   ..............
   items:[{
            xtype: 'textfield',
            fieldLabel: 'Name',
            blankText: 'Name is required'
        },{
            xtype: 'datefield',
            fieldLabel: 'Birthdate',
            blankText: 'Birthdate is required'
        }],
      .............

  });


   if(fp.getForm().isValid()){//判断是否验证通过 return true/false
    ..................

}
是不是想要这个?


------解决方案--------------------
  var fp = new Ext.FormPanel({
   ..............
   items:[{
            xtype: 'textfield',
            fieldLabel: 'Name',
            blankText: 'Name is required'
        },{
            xtype: 'datefield',
            fieldLabel: 'Birthdate',
            blankText: 'Birthdate is required'
        }],
      .............

  });


   if(fp.getForm().isValid()){//判断是否验证通过 return true/false
    ..................

}
是不是想要这个?