jqgrid 分组无法正常工作
Posted
技术标签:
【中文标题】jqgrid 分组无法正常工作【英文标题】:jqgrid grouping not working as it should 【发布时间】:2018-06-05 12:59:18 【问题描述】:我有这个 jqgrid 定义:
var columnas = [
label: 'Localidad', name: 'InventarioLocalidad', width: 120 ,
label: 'Empresa', name: 'InventarioEmpresa', width: 120 ,
label: 'Tipo', name: 'InventarioTipo', width: 120 ,
label: 'Número Serie', name: 'InventarioNumSerie', width: 120 ,
label: 'Marca', name: 'InventarioMarca', width: 120 ,
label: 'Modelo', name: 'InventarioModelo', width: 120 ,
label: 'En Uso', name: 'InventarioEnUso', width: 80, formatter: booleanFmatter ,
label: 'RUT', name: 'InventarioRutUsuario', width: 100 ,
label: 'Usuario', name: 'InventarioNombreUsuario', width: 120 ,
label: 'Status', name: 'Inventariostatus', width: 80 ,
label: 'Fecha', name: 'InventarioFecha', width: 100, formatter: 'date', formatoptions: srcformat: "ISO8601Long", newformat: "d/m/Y" ,
label: 'Hora', name: 'InventarioHora', width: 80, formatter: 'date', formatoptions: srcformat: "ISO8601Long", newformat: "d/m/Y" ,
label: 'Fecha Carga', name: 'InventarioFechaCarga', width: 130, formatter: 'date', formatoptions: srcformat: "ISO8601Long", newformat: "d/m/Y"
];
var grid = $('#gridReporteConAnalisis');
grid.jqGrid(
url: urlGrid,
mtype: "GET",
datatype: "json",
colModel: columnas,
viewrecords: true,
shrinkToFit: false,
autowidth: false,
multiselect: false,
rowNum: 20,
rowList: [10, 20, 30],
gridview: true,
pager: pagerName,
sortname: "InventarioTipo",
sortorder: "asc",
grouping: true,
groupingView:
groupField: ['InventarioTipo'],
groupDataSorted: true,
groupColumnShow: [false],
groupOrder: ['asc']
,
loadError: function (xhr, status, error)
checkUserSession(xhr);
,
beforeRequest: function ()
var $PANEL = $('#pnlGridConAnalisis')
$FOOTER = $('footer');
grid.jqGrid('setGridWidth', $PANEL.width());
// 125 = otros altos, como paddings y la fila de paginación
grid.jqGrid('setGridHeight', $FOOTER.offset().top - $PANEL.offset().top - 125);
);
问题是网格是这样出现的:
如您所见,组以不同的子节点出现多次。这很好,但是,为什么分组不会将同一组下的所有元素分组?
馈送网格的 JSON 格式良好,因此在此处显示无关紧要,而且它非常大。
【问题讨论】:
我认为您需要确保一个组中的所有行都在 JSON 数据中。在 SQL 查询中使用ORDER BY inventariotipo
。
【参考方案1】:
您需要修复创建 JSON 的服务器端代码,以便将所有相关行放在一起。 jqGrid
不会对数据重新排序,它只是在此列发生变化时启动一个新组。
在 SQL 查询中使用ORDER BY inventariotipo
应该可以解决问题。
【讨论】:
它确实有道理......但在你提到它之后:-)以上是关于jqgrid 分组无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章
jQGrid TreeGrid 的内联导航 addRow 方法无法正常工作
使用自定义日期格式后,jQGrid DateFilter无法正常工作