0

私は JavaScript が初めてで、ExtJS 3.4 を使用する必要があります。3列の単純なツリーを作成しました。どのセルが選択されたか、またはどの行と列が選択されたかを知りたいです。

Sencha がhttp://dev.sencha.com/deploy/ext-3.4.0/examples/treegrid/treegrid.htmlで使用している例を使用しています。

  var tree = new Ext.ux.tree.TreeGrid({
    title: 'Core Team Projects',
    width: 500,
    height: 300,
    renderTo: Ext.getBody(),
    enableDD: true,

    columns:[{
        header: 'Task',
        dataIndex: 'task',
        width: 230
    },{
        header: 'Duration',
        width: 100,
        dataIndex: 'duration',
        align: 'center',
        sortType: 'asFloat',
        tpl: new Ext.XTemplate('{duration:this.formatHours}', {
            formatHours: function(v) {
                if(v < 1) {
                    return Math.round(v * 60) + ' mins';
                } else if (Math.floor(v) !== v) {
                    var min = v - Math.floor(v);
                    return Math.floor(v) + 'h ' + Math.round(min * 60) + 'm';
                } else {
                    return v + ' hour' + (v === 1 ? '' : 's');
                }
            }
        })
    },{
        header: 'Assigned To',
        width: 150,
        dataIndex: 'user'
    }],

    dataUrl: 'treegrid-data.json'
});

ExtJS 3.4でこれを行うことは可能ですか? ノードを取得できますが、どのセル、列、または行が選択されたかを示す場所がわかりません。

どんな助けでも大歓迎です!

4

1 に答える 1

0

たとえば、リスナーをアタッチする必要があります

 listeners: {
                afterRender: function(p) {
                    p.body.on('click', function() { // Function tapping clicks on Panel
                    alert(p.getTargetEl().dom.innerHTML);

                                            });
                    });

             }
于 2013-05-04T10:31:58.437 に答える