显示窗口时显示值

时间:2012-07-04 08:44:17

标签: extjs extjs4 extjs-mvc extjs4.1

我想显示一个弹出窗口,其中显示一些从PHP服务器文件中获取的值。我不知道如何在窗口上显示项目。

我不知道为什么但是渲染视图时控制器中的console.log消息'method call'不会显示。我想这是因为我添加了click: this.methodcall(只有在点击按钮时才会被调用,但我希望在渲染视图时打印日志语句)

View上没有显示任何内容,我认为这是因为我没有添加任何代码来在View中显示它。

有人可以帮我解决这个问题吗?

我的弹出窗口查看代码;

Ext.define('Project.view.user.Popupwin', {
    extend: 'Ext.window.Window',
    alias: 'widget.popupwin',
    layout:'fit',
    autoShow: true,
    initComponent: function() {
        this.store = 'Popupwin';
        this.items = [
            {
                xtype: 'form',
                items: [                    
                ]
            }
        ];     
        this.callParent(arguments);
    }
});

商品

Ext.define('Project.store.Popupwin',{
    extend:'Ext.data.Store',
    model:'App.model.Popupwin', 
    proxy: {
        actionMethods : {           
            read   : 'POST'         
        },
        type: 'ajax',
        url : 'loaddata.php',
        autoLoad: true
    }   
});

CONTROLLER

Ext.define('Project.controller.Popupwin',{
    extend: 'Ext.app.Controller',       
    stores:['Popupwin'],
    models:['Popupwin'],
    views:['DoctorView'],
    init: function(){
        console.log('executed');                
        this.control({              
            'popupwin': {
                click: this.methodcall
            }
        });             
        },
        methodcall: function() {
                            console.log('method call');
            this.getShowPopupwinStore().load();
        }
});

模型

Ext.define ('Project.model.Popupwin',{
    extend: 'Ext.data.Model',   
    fields:['fname','lanme']
});

1 个答案:

答案 0 :(得分:3)

窗口没有点击事件,所以你不能听它。

Ext.define('MyWindow', {
    extend: 'Ext.window.Window',
    afterRender: function(){
        this.callParent(arguments);
        this.el.on('click', this.fireClick, this);
    },

    fireClick: function(e, t){
        this.fireEvent('click', this, e);
    }
});