2012-04-27 40 views
1

我正在sencha2.0上工作。我有一个登录表单,我想通过点击登录表单中的提交按钮来调用另一个表单。如何在sencha2.0中点击登录表单的提交按钮来调用另一个表单?

Ext.define('senchaApp.view.test', { 
    extend : 'Ext.form.Panel', 
    xtype : 'test', 
    requires: "Ext.form.FieldSet", 
    id : 'login', 
    layout:'vbox', 
    constructor : function(config) { 
     var formContainer = Ext.create('Ext.Panel',{ 
      width:'100%', 
      height:'100%', 
      id:'formPanel', 
      flex:1, 
      items:[{ 
       xtype:'textfield', 
       name:'user', 
       id:'user', 
       label:'Username', 
       clearIcon:false, 
       cls:'fields' 
       }, 
       {xtype:'passwordfield', 
       style:'margin-top:10px;', 
       name:'pass', 
       id:'pass', 
       label:'Password', 
       clearIcon:false, 
       cls:'fields' 
       }, 
       {xtype:'button', 
       cls:'submitBtn', 
       id:'submit', 
       ui:'action-small', 
       action:'submitLogin', 
       style:'background-image: url("app/resources/images/img_btnStrip.png");width:186px;margin: 0 auto;height:66px;margin-top:20px;background-color:none;' 
       }] 
     }); 

     var formContentHolder = Ext.create('Ext.Panel',{ 
      cls:'middleContainer', 
      items:[formContainer] 
     }); 
     config.items = [formContentHolder]; 
     this.callParent(arguments); 
    }, 
    initialize : function() { 
     this.callParent(arguments); 
    } 
}); 

在控制器有Main.js,一个疑问就是要来下裁判的参考和选择:

Ext.define('senchaApp.controller.Main',{ 
    extend:'Ext.app.Controller', 
    refs:[{ 
     ref:'', 
     selector:'' 
    }], 

    init: function(){ 
    Ext.create('senchaApp.view.Viewport'); 
    this.control({ 
     '#submit':{ 
      tap: this.showanotherform 
    } 
    }); 
}, 
    showanotherform: function(){ 
    //How I will call another form on click of submit button here 
} 

}); 

回答

-1

在煎茶触摸控制器文件,里面的refs部分,

  • ref:ref是名称或getter方法(第一个字符是自动大写)。将来可以引用该组件。

  • selector:选择器与ComponentQuery一起使用以获取该选择器的引用并将其缓存。它突出了id (#myButton)xtype(button),它用于识别我们正在引用的组件,并尝试通过ref值来使用它。

+0

Thanx的答案。我拥有的另一个查询是我应该在showanotherform函数中写什么,以便我可以通过点击提交按钮调用另一个表单? – ruhi 2012-04-27 10:54:27

+0

我想你需要使用类似于NavigationView的东西,并且只有在成功提交以前的表单时才能导航到下一个视图。看看这里.. http://docs.sencha.com/touch/2-0/#!/guide/navigation_view – 2012-04-27 11:11:49

+0

我在想如果我把视图的布局作为卡片,然后将这两个表格添加为项目。我知道这里的逻辑,但感觉在实施它的挑战。如果你觉得想法可以让你能提供一些链接,我可以得到一些帮助来实现它?截至目前,如果我从“vbox”替换布局“卡”,那么我无法看到形式的领域。等待你的回应 – ruhi 2012-04-27 12:04:35