ExtJS - Как я могу управлять существующей сеткой с помощью JavaScript? - PullRequest
0 голосов
/ 01 декабря 2011

Я использую инструмент веб-автоматизации для сайта, который использует сетку ExtJS, и хотел бы запустить JavaScript, который имитировал бы событие onlick для строки ... Когда я запускаю обычное событие onclick на соответствующие теги div, ничего не происходит.

Я сделал 'Ext.version' и получил 2.2, поэтому я посмотрел API Ext 2.2 здесь: http://extjs.edspencer.net/extjs/docs/, но я не могу в этом разобраться. Меня не интересует создание новой сетки, но я манипулирую существующей. Есть идеи?

Ответы [ 2 ]

1 голос
/ 01 декабря 2011

Вам нужно посмотреть на события на GridPanel.Есть событие rowclick.Затем вы можете применить слушателя к сетке, либо в конфигурации сетки:

new Ext.grid.GridPanel({
    ...
    listeners: {
        rowclick: function() {
            // do some stuff
        }
    }
});

Или после факта:

var grid = new Ext.grid.GridPanel({
    id: 'fooGrid'
});

Ext.getCmp('fooGrid').addListener('click', function(){
    // do some stuff
})

Но если вы хотите запустить событие onclick, какВы заявили, что делаете следующее:

var rowIndex = 5;
var grid = Ext.getCmp('fooGrid')

grid.fireEvent('rowclick', grid, rowIndex)

Источник, наблюдаемый объект.Почти все наследуется от Observable в ExtJS 2:

http://extjs.edspencer.net/extjs/docs/#Ext.util.Observable

0 голосов
/ 02 декабря 2011

Я думаю, что @WattsInABox - точный способ выбрать отдельный компонент, но вы после «запуска» события click, а не для добавления слушателя.

ExtJS-тип существует в своем собственном абстрагированном пузыре, поэтому вместо того, чтобы вызывать событие DOM 'click', вам нужно запустить SELECTION определенной строки. Код для выбора первой строки будет выглядеть так:

Ext.getCmp('fooGrid').getSelectionModel().selectRow(0);

Если fooGrid является идентификатором сетки, для которой вы собираетесь запустить действие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...