CGridView метод сортировки изменений

Я новичок в Yii Framework. Я анализирую автоматически сгенерированные представления CRUD. Когда я щелкаю заголовки столбцов для сортировки, они снова загружают данные, поэтому это намного медленнее, чем написание jQuery-способа сортировки таблицы. Как изменить это поведение. Я не хочу перезагружать данные каждый раз, когда сортирую таблицу, хочу сортировать только то, что у меня есть сейчас.

1 ответ

Решение

Если я правильно понимаю, вы хотите отсортировать только строки на текущей странице, а не все строки в наборе результатов? Я не уверен, что вижу в этом смысл, если только это не достаточно маленький набор результатов. Большинство пользователей хотят видеть весь набор результатов, упорядоченный по столбцу, а не только одну страницу.

Там нет ничего встроенного в CGridView делать это на клиенте я не думаю, но было бы не сложно написать

$('table tr').each(function(){
    var me = $(this)
    if ( me.find('.columnToCompare').text() > me.find('.secondColumn').text() )
    {
         me.prev().insertBefore(me);
    }
}

Очень быстро набрал, но надеюсь, вы понимаете суть.

Другие вопросы по тегам