2015-03-16 2 views
0

Код от ответа Set rownumbers to false dynamically in jqgridКак показать номера строк больше, чем 9999 в свободной jqgrid

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

$grid.jqGrid("navButtonAdd", "#grid_toppager", { 
     buttonicon: "fa-list-ol", 
     iconsOverText: true, 
     caption: '', 
     id: "RowNumbers", 
     onClickButton: function (options, e) { 
      var $me = $(e.currentTarget); 
      if ($grid.jqGrid('getGridParam', 'rownumbers') && $grid[0].p.colModel[0].hidden) { 
       $grid.jqGrid('showCol', 'rn'); 
       $me.addClass("ui-state-active"); 
      } else { 
       $grid.jqGrid('hideCol', 'rn'); 
       $me.removeClass("ui-state-active"); 
      } 
      resizeGrid(); 
      saveWindowState(); 
     } 
    }); 

    if (isColState && myColumnsState.rownumbers) { 
     $("#RowNumbers").click(); 
    } 

Если номер строки больше 9999, последняя цифра не отображается.

номера строк 10000 .. 10009 отображаются как 1000, 10010 отображается как 1001 и т. Д. Как показать полные номера строк? Я пробовал разные уровни масштабирования в браузере, чтобы номера строк не появлялись. Thied для изменения размера, но похоже, что столбец номера строки не изменяется.

ответ

1

jqGrid имеют rownumWidth опцию, которая позволяет увеличить ширину столбца rnво время создания сетки. Если вам необходимо установить ширину столбца динамически, вы можете использовать setColWidth, описанный here и here. The demo показывает, что вы можете динамически установить ширину столбца rn. Метод setColWidth является частью free jqGrid 4.8, поэтому вы можете использовать его напрямую.