Dojo DataGrid - Вызов встроенного редактора ячеек

Как программно перевести ячейку DataGrid в режим редактирования с помощью Dojo 1.5? Скажем, я хочу, чтобы событие onclick кнопки запускало встроенный редактор для ячейки с именем поля 'alias' и rowId равным 4. Я попробовал grid.doStartEdit («alias», 4), но он, похоже, ничего не делает. (или вызвать какие-либо ошибки), и я не могу найти никакой документации по этому поводу.


person czervik    schedule 14.11.2011    source источник


Ответы (1)


У меня работает следующее:

function startEdit(grid, rowIndex, cellIndex) {
    var cell = grid.getCell(cellIndex);
    grid.setFocusCell(cell, rowIndex);
    grid.setEditCell(cell, rowIndex);
}

Это не будет работать напрямую, если строка, которую вы пытаетесь редактировать, была только что создана, например, пользователь нажал кнопку Insert, вы вставили новую строку и теперь хотите поместить первую ячейку в этой строке в режиме редактирования, поэтому пользователь может заполнить свои данные. Если это то, что вы делаете, вам придется вызвать эту функцию с помощью setTimeout, чтобы у хранилища было достаточно времени, чтобы поместить свои данные в сетку.

person David Stanley    schedule 28.12.2011