2015-11-27 2 views
1

Extjs, я столкнулся с проблемой в gridSelectionModel сетки checkbox. Когда я попытался выбрать все флажки, используя grid.gridSelectionModel(). SelectAll(). Для нескольких записей он работает, но с записями более 500 он делает страницу не отвечающей. Я попытался приостановить события. Но все вышеперечисленное не работает должным образом. Я использую Extjs 4.2.2 версияПоле сетки сетки Extjs выберите все проблемы

+0

Я думаю, что это grid.getSelectionModel() не grid.gridSelectionModel(). И это должно сработать. Скажите, что вы думаете, как вы показываете столько записей? Вы использовали пейджинг или просто показывали все данные в сетке. –

+0

Я должен показать около 10000 записей за раз. При нажатии на кнопку я должен выбрать все записи. Upto 1000 записей работает нормально, но после этого он делает страницу не отвечающей –

ответ

1

Я воспроизвел вашу проблему в 4.2.2 в this fiddle. Окно браузера замерзает довольно долгое время.

Проблема устранена в 5.1.2 и 6.0.1.

В документах я обнаружил, что selectAll имеет флаг suppressEvent, который хорошо работает (selectAll(true)). Вы захотите вручную запустить событие changechange один раз после работы с suppressEvent.

+0

Спасибо, что она работает, но производительность очень плохая. для запуска почти 8000 записей требуется некоторое время. –

+0

У меня есть готовый выходной выбор с более чем 10000 записей, я хочу установить флажок. Я пробовал что-то вроде этого gridSelectionmode.select (record, true, true); –

0

Это работает для меня, в моем случае я должен был установить флажок включен для уже выбранных полей

// select the records 
var selectedModel = grid.getSelectionModel(); 
selectionModel.suspendChange = true; 

for (var i = 1; i < query.getCount() ; ++i) 
selectionModel.select(query.getAt(i), true, true); 
Смежные вопросы