Параметр JQGRID Tabletrid "Опции" "
Вопрос
Основы
Привет всем, я видел таблеточный метод (Питер Ромианавски) определен как tableToGrid(selector, options)
на JQGRID Wiki, но не могу найти нигде, что имеет документацию о options
Кто-нибудь знает об этом или где их найти? Редактировать: Спасибо Олег, разрешены!
Более
То, что я на самом деле пытаюсь сделать, это связать в результате jqgrid в form
, что представит checkbox
Значения, которые находятся в столбце таблицы. Моя проблема в том, что tableToGrid
метод, кажется, удаляет name
недвижимость от checkbox
Элементы и, следовательно, они не подаются с постом формы.
Решение 2
Решается
Способ JQGRID Tabletrid найдет значение флажков в оригинальной таблице и автоматически реализует multiSelect: true
Опция в результате jqgrid, показывая внутренние флажки. Чтобы получить список выбранных идентификаторов строк, просто позвоните
$('#grid').getGridParam('selarrrow')
Другие советы
Как вы можете прочитать http://www.triirand.com/jqgridwiki/doku.php?id=wiki:ttable_to_jqgrid Параметр опций tableToGrid
Метод - не более того, что варианты jqgrid, который вы создаете (см. http://www.triirand.com/jqgridwiki/doku.php?id=wiki:options.).
Если я несусную вашу основную проблему упрощаю, у вас есть некоторые данные, полученные с сервера в качестве ответа на форму отправки. И вы хотите разместить эти данные в сетке. Чтобы сделать это, вы можете использовать более прямой способ с использованием datatype: 'local'
jqgrid. Вот пример:
var grid = jQuery('#list').jqGrid({
caption: 'Testclusters',
height: 'auto',
gridview: true,
rownumbers: true,
sortable: true,
datatype: 'local',
viewrecords: true,
pager: '#pager',
pgbuttons: false,
pginput: false,
rownumbers: true,
colNames: ['Name', 'Testtiefe', 'Std', 'FachlicheTests', 'RowVersion'],
colModel: [
{ name: 'Name', index: 'Name', width: 120 },
{ name: 'TesttiefeName', width: 180 },
{ name: 'Std', width: 21, formatter: 'checkbox', align: 'center' },
{ name: 'IsFachlicheTests', width: 21, formatter: 'checkbox', align: 'center' },
{ name: 'RowVersion', width: 50, hidden: true }
]
}).navGrid('#pager', { edit: false, add: false, del: false, refresh: true, view: false, search: false })
.navButtonAdd('#pager', { caption: "", buttonicon: "ui-icon-calculator", title: "choose columns",
onClickButton: function() {
jQuery('#list').jqGrid('columnChooser');
}
});
grid.jqGrid('gridResize');
var myData = [
{ Name: "VIA XP", TesttiefeName: "Alle SW-Produkte", Std:true, IsFachlicheTests:false, RowVersion: "20FC31" },
{ Name: "KUBUS", TesttiefeName: "Alle SW-Produkte", Std:false, IsFachlicheTests:true, RowVersion: "20FC32" }
];
for (var i = 0; i <= myData.length; i++) {
grid.addRowData(i + 1, myData[i]);
}
Прежде всего, вы создаете пустой jqgrid, а затем заполните его по отношению к addRowData
метод.
Более того, если у вас есть много флажков внутри JQGRID, это может быть интересно посмотреть на мой пример от Вертикальный текст внутри заголовков таблицы с использованием библиотеки SVG на основе JavaScript и посмотреть результаты на http://www.ok-soft-gmbh.com/verticalheaders/testfixedo1.htm..
Изменить ширину столбца для любого количества столбцов
В этом случае после создания JQGRID вы можете просто перейти к созданию таблицы и вручную изменить все ширины колонны заголовка столбца и соответствующие данные, не исправляя некоторый утомительный код.
var tabColWidths ='70px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px';
function reDefineColWidth(){
var widthsArr = tabColWidths.split('|');
for(var j=0; j < widthsArr.length ; j++ ){
$('.ui-jqgrid-labels > th:eq('+j+')').css('width',widthsArr[j]);
$('#grid tr').find('td:eq('+j+')').each(function(){$(this).css('width',widthsArr[j]);})
}
}