2016-09-30 3 views
1

Я хочу изменить порядок столбцов jqGrid на column name или на column index (string) не на column index (int). Я видел этот APIjqGrid для динамического изменения столбца по имени индекса

$("#list").jqGrid("remapColumns", [0,1,12,3,14,5,6,7,8,11,2], true);

Он использует номер столбца индекса, но проблема после изменения порядка jqGrid сделать REINDEX и изменить индекс. Поэтому я ищу API, который принимает имя столбца вместо целочисленного значения.

Это мой код, чтобы получить имя столбца

var columnModels = grid.jqGrid('getGridParam', 'colModel'); 
var user_visibalColumn = []; 
for (var columnModelIndex in columnModels) { 
    var columnModel = columnModels[columnModelIndex]; 
    if (!columnModel.hidden) { 
     user_visibalColumn.push(columnModel.name);   
    } 
} 
//console.log(user_visibalColumn); 

Так через некоторое время на мероприятие, я хочу, чтобы вызвать getGridParam с указанной выше user_visibalColumn колонкой массива.

Возможно ли это? Если нет, то есть способ добавить HTML-тег col-id тега данных, чтобы я мог получить col-id.

Я видел this answer, но я не могу понять, как только реализовать restoreColumnState.

Любое предложение будет очень полезно.

Спасибо.

ответ

1

Пожалуйста, напишите allays, какую версию jqGrid вы используете (или можете использовать), и из которой вилка jqGrid. Кроме того, важно написать, какую вилку jqGrid вы используете (free jqGrid, коммерческий Gurrido jqGrid JS или старый jqGrid в версии < = 4.7).

Я согласен с проблемой указателей столбцов использования вместо имен столбцов. Именно по этой причине я сделал много изменений в бесплатной вилке jqGrid, которую я разрабатываю, начиная с создания основной старой коммерческой вилки (см. the post) в версии 4.7.1. Я ввел метод remapColumnsByName вместе со старым методом remapColumns. The answer обеспечивает the demo, что демонстрирует использование remapColumnsByName. Кроме того, бесплатный jqGrid содержит главным образом имена столбцов, а не индексы столбцов, и имеет вспомогательную опцию iColByName, которая помогает получить текущий индекс столбца по имени столбца.

Я рекомендую вам обновить jqGrid, который вы используете для текущей (4.13.4) версии бесплатного jqGrid и использовать remapColumnsByName.

+0

Я следую за IST, так что просто ложитесь спать (его 1AM здесь), если вы не возражаете, можете проверить вас утром по утрам? и Im использует 'jqGrid js version 5.1.1' свою бесплатную версию. –

+0

@RaunakGupta: не спешите. Мы можем продолжить утром или на следующей неделе. Важно понимать, что 5.1.1 ** не является бесплатным **, по крайней мере, для коммерческого использования, даже если источник открыт (см. [Здесь] (https://github.com/tonytomov/jqGrid)). Это Guriddo jqGrid JS. Вы можете увидеть лицензию на первый комментарий файла. Вы должны заплатить цену, которую вы можете найти здесь (http://guriddo.net/?page_id=103334). Вы можете изучить проблему, подробно прочитав лицензионное соглашение и найти в Интернете информацию о предмете. – Oleg

+0

спасибо @Oleg за это, я не знал об этом, я буду понижать мою библиотеку jqgrid. Кстати, я очень много нового в jqGrid на самом деле, это первый раз, когда я использовал его, будучи разработчиком Laravel, я использую пакет 'yajra datatables', который используется для решения всех моих целей. –

 Смежные вопросы

  • Нет связанных вопросов^_^