2013-04-25 58 views
1

我有一个登录表单,当我点击连接按钮,我想去另一个视图,关闭登录视图。按钮点击动作关闭查看与extjs 4

是我的烃源代码:

登录视图

Ext.define('Ext4Example.view.login.LoginForm' ,{ 
extend: 'Ext.form.FormPanel', 
alias : 'widget.login', 

bodyStyle: "background-image:url('resources/images/logo.png')", 
margin: '100 50 10 450', 
width:500, 
height:320, 
frame: true, 
initComponent: function() { 
this.items= [{ 
    xtype: 'textfield', 
    name : 'id', 
    fieldLabel: 'id', 
    hidden:true 
}, 
{ 
     xtype: 'textfield', 
     x:100, 
     y:100, 
     cls:'user', 
     emptyText : "votre nom d'utilisateur...", 
     fieldLabel:"Nom d'utilisateur", 
     name:'j_username', 



    },{ 
     xtype: 'textfield', 
     x:100, 
     y:100, 
     emptyText : "votre mot de passe...", 
     name:'j_password', 
     fieldLabel:'Mot de passe' 

    }, 

    { 
      xtype: 'checkbox', 
      boxLabel: 'Rester connecte', 
      x:100, 
      y:110, 
      allowBlank: false}, 
      {xtype: 'button', 
       text:'Connexion', 
       action: 'connect', 

       margin:'120 0 0 170', 
       name:'connect' 
      }, 


       {xtype: 'button', 
        margin:'120 20 0 20', 
        text:' Annuler ', 
        action: 'reset', 
         name:'reset', 

       }, 
      { 
       xtype: 'tbtext', 
       text: 'Copyright © Tous droits réservés', 
       margin: '64 0 0 58', 

       } 
    ], 
this.callParent(arguments); 
} 


});  

首页查看

Ext.define('Ext4Example.view.login.HomePage' ,{ 
extend: 'Ext.container.Viewport', 

alias : 'widget.home', 

requires: [ 
      'Ext4Example.view.login.WestMenu', 
      'Ext4Example.view.login.CenterPanel' 

     ], 
     layout: { 
      type: 'border', 
      padding: '0 5 5 5' 
     }, 

initComponent: function() { 


this.items= [ 

    { 

    xtype: 'westmenu', 
    region: 'west' 
},{ 

    xtype: 'portletpanel', 
    region: 'center', 
} 
], 

    this.callParent(arguments); 
} 
});  

我控制器

Ext.define('Ext4Example.controller.Login', { 
extend: 'Ext.app.Controller', 

stores: ['Login'], 

models: ['Login'], 

views: ['login.LoginForm','login.HomePage','login.CenterPanel','login.WestMenu'], 


init: function() { 


    this.control({ 
     'login button[action=add]': { 

     }, 

     'login button[action=reset]': { 
      'click' : function(button, event, opt) { 

       var form = button.up('form'); 
       form.getForm().reset(); 
      } 
     }, 

     'login button[action=connect]': { 

      'click' :this.connect 
     } 
    }); 
}, 
connect:function(button,record) 
{ 

var view1 = Ext.widget('home'); 


} 

});

当我点击按钮连接我看到在同一页上的两个视图,但我希望登录视图消失,只有我想显示主视图。

任何一个有解决方案?

+0

如果您在代码中创建的登录和主视图。在上面的代码中,您已经定义了但尚未创建...请查看该位置。 – Hariharan 2013-04-25 11:25:39

+0

我已经创建了登录和主页视图,并在顶部提及 – Amin 2013-04-25 15:14:17

+0

您已经定义了登录和主页视图,但未在上述代码中创建。请看看您的视图创建区域。 – Hariharan 2013-04-26 05:39:01

回答

1

尝试:

var win = button.up('login'); 
win.close();