1

我无法在 ext.js [4.1..1a GPL] 中的 cellclick 上触发 itemclick 事件。我的 app.js 是这样的:

Ext.application({
    name: 'HelloExt',
    launch: function() {
 var k =  Ext.create('Ext.panel.Panel', {
        title: 'Tic Tac Toe',
        width: 300,
        height: 300,
    layout: {
            type: 'table',
            // The total column count must be specified here
            columns: 3
        },
        defaults: {
            // applied to each contained panel
            bodyStyle:'padding:20px'
        }
    ,
        items: [{
            html: '',
        },{
            html: '',
        },{
            html: ''
        },{
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
        ],
        renderTo: Ext.getBody(),
    listeners :
    {
        itemclick: function(dv, record, item, index, e) {
           alert(record);
       }
    }
   });
}
});

任何人请帮忙。

谢谢

4

1 回答 1

0

面板不存在此侦听器。你至少需要一个视图。下面的示例捕获每个“字段”的点击事件。

Ext.application({
    name: 'HelloExt',
    launch: function() {
 var k =  Ext.create('Ext.panel.Panel', {
        title: 'Tic Tac Toe',
        width: 300,
        height: 300,
    layout: {
            type: 'table',
            // The total column count must be specified here
            columns: 3
        },
        defaults: {
            // applied to each contained panel
            bodyStyle:'padding:20px',
            listeners: {
                afterRender: function(p) {
                    p.body.on('click', function() { alert(p.id) });
                }
            }
        }
    ,
        items: [{
            html: ''
        },{
            html: '',
        },{
            html: ''
        },{
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
    {
            html: ''
        },
        ],
        renderTo: Ext.getBody()
   });
}
});
于 2012-11-20T11:29:48.247 回答