jqgrid - jqGrid:添加子网格后父网格的冻结列不起作用
问题描述
我有一个带有子网格的 jqgrid。我在父网格和子网格中做了几列冻结。子网格上的冻结列工作正常,但它不适用于父网格。
当我通过将 subGrid 设置为 false 来禁用子网格时,冻结的行在父级上完美运行。
有什么我遗漏的东西可以阻止父网格上的冻结列工作吗?
这是我的jqgrid:
$(function () {
"use strict";
var myData = {
id: "509403957ae7d3929edcb812",
name: "MYBOOK",
chapters: [
{
name: "myfirstchapter",
sequence: 10,
title: "My First Chapter",
filetype: "tex",
col3: "a",
col4: "b",
files: [
{ filetype: "tex", name: "myfile1", col3: "a", col4: "b" },
{ filetype: "doc", name: "myfile2", col3: "c", col4: "d" },
{ filetype: "doc", name: "myfile3", col3: "e", col4: "f" },
]
},
{
name: "mysecondchapter",
sequence: 20,
title: "My Second Chapter",
filetype: "tex",
col3: "a",
col4: "b",
files: [
{ filetype: "tex", name: "myfirstfile", col3: "a", col4: "b" },
{ filetype: "tmpl", name: "myfileb", col3: "c", col4: "d" },
]
}
]
},
$grid = $("#list");
$grid.jqGrid({
datatype: "local",
data: myData.chapters,
colNames: ["Sequence", "Name", "Title", "Filetype", "col3", "col4"],
colModel: [
{name: "sequence", width: 65, key: true, frozen: true },
{name: "name", width: 200, frozen: true },
{name: "title", width: 150},
{name: "filetype", width: 130},
{name: "col3", width: 130},
{name: "col4", width: 130}
],
rowNum: 3,
rowList: [3, 5, 10],
pager: "#pager",
gridview: true,
ignoreCase: true,
rownumbers: true,
sortname: "sequence",
viewrecords: true,
height: "auto",
autowidth: false,
shrinkToFit: false,
width: 600,
subGrid: true,
subGridRowExpanded: function (subgridId, rowid) {
var $subgrid = $("<table id='" + subgridId + "_t'></table>");
$subgrid.appendTo("#" + subgridId);
$subgrid.jqGrid({
datatype: "local",
data: $(this).jqGrid("getLocalRow", rowid).files,
colNames: ["Name", "Filetype", "col3", "col4"],
colModel: [
{name: "name", width: 130, key: true, frozen: true},
{name: "filetype", width: 130, frozen: true},
{name: "col3", width: 130},
{name: "col4", width: 130}
],
height: "100%",
rowNum: 10,
sortname: "name",
shrinkToFit: false,
autowidth: true,
idPrefix: "s_" + rowid + "_"
}).jqGrid("setFrozenColumns");
}
});
$grid.jqGrid("navGrid", "#pager", {add: false, edit: false, del: false});
$grid.jqGrid("setFrozenColumns");
});
解决方案
在 Guriddo jqGrid 中,当冻结列打开时,子网格不能使用。
在这里您可以阅读Guriddo jqGrid 的所有限制。我们不知道这在 free-jqgrid 中是怎样的。
推荐阅读
- webpack - 使用 webpack 创建库时的 name 与 name.default
- xcode - 使用 Travis CI 和 TestFairy 将应用程序部署到测试人员
- sql - 在不改变表格的情况下插入一行
- javascript - 需要指导!尝试了解 fetch() 和 Promises
- reactjs - 将 React 应用程序部署到 Heroku 失败错误消息“应用程序与 buildpack 不兼容”
- java - Tomcat Web 应用程序资源文件放置
- php - 在 foreach 中使用 do while 循环
- c# - Convert.ToInt32 不接受字符串十六进制值
- mysql - 外循环不起作用
- c# - C# 正则表达式字符串数组转义 *