EXTJs Uncaught TypeError: this.getForm 不是函数

问题描述

我为登录页面编写了一些代码(见下文)我收到以下信息 控制台错误

未捕获的类型错误:this.getForm 不是函数

有关如何解决此问题的任何帮助...

下面是代码

Ext.application({
name : 'Login',launch : function() {
    Ext.create('Ext.window.Window',{
        title:'Logless',height:200,width:300,padding:'10 0 10 10',closable:false,items:[{
            xtype:'textfield',fieldLabel:'EmpuID'
        },{
            xtype:'textfield',inputType:'password',fieldLabel:'Password'
        },{
            xtype:'button',text:'Log In',handler:this.Login,scope:this
        }],}).show();

},Login:function(){
          //Ext.Msg.alert('fiddle','Welcome to Sencha fiddle!');
          this.getForm().submit({
              url:'http://localhost:8085/Soumya/getFilm.action',success:function(form,action){
                  Ext.Msg.alert('fiddle','Welcome to Sencha fiddle!');
              },failure:function(form,})
      },});

解决方法

嗯,错误消息非常具有解释性:getForm 对象上没有名为 this 的函数。

this 对象是应用程序对象(因为它是创建窗口时作用域中的对象,因此设置的处理程序使用它)。并且 Ext.Application 对象没有名为 getForm

的函数

窗口中也没有任何表单 - 您已经创建了一堆字段和一个按钮,但它们不是表单的一部分。

所以上面的代码不能工作的原因有很多。

幸运的是,有一个 Sample Login Page in the Sencha documentation - 我建议你检查一下。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...