Javascript 滑动网格列重新排序工作不正常
我使用的是Slickgrid javasript库,我已经用以下选项初始化了我的网格:Javascript 滑动网格列重新排序工作不正常,javascript,slickgrid,Javascript,Slickgrid,我使用的是Slickgrid javasript库,我已经用以下选项初始化了我的网格: var options = { enableCellNavigation: true, enableColumnReorder: true, syncColumnCellResize: false, asyncEditorLoading: true }; 我已经实现了我的slickgrid的其余部分,它工作得很好。我遇到的唯一问题是,列的重新排序没有按应有的方式工作 我可以将一个列标题拖动
var options =
{
enableCellNavigation: true,
enableColumnReorder: true,
syncColumnCellResize: false,
asyncEditorLoading: true
};
我已经实现了我的slickgrid的其余部分,它工作得很好。我遇到的唯一问题是,列的重新排序没有按应有的方式工作
我可以将一个列标题拖动到另一个位置,但是当它悬停在我想放置它的位置上时,其他列标题不会像我前面看到的示例那样移动。我通常需要处理列标题,直到打开一个空间
我还没有看到任何关于列标题无法重新排序的文档,所以我甚至不知道在哪里,或者是什么原因导致了这些问题
有人对Slickgrid有类似的问题吗?或者有什么建议吗?我最近刚开始使用Slickgrid,遇到了类似的问题 我是这样做的:
var options = { ... };
var dataView = ...;
// initialize columns with empty array
var columns = [];
// intialize myGrid with the empty columns
var myGrid = new Slick.Grid(
"#myGrid", dataView,
columns, options);
// initialize columns here (e.g. after loading dynamic column header data)
columns.push(
{id:"sel", name:"#", field:"num", sortable: true},
{id:"title", name:"Title", field:"title", sortable: true},
{id:"duration", name:"Duration", field:"duration", sortable: true});
// update the columns
myGrid.setColumns(columns);
你可能会问我为什么这样做。嗯,我有一些来自动态内容的列标题,并试图保持内容加载与行数据加载的方法相同。在任何情况下,当我以上述方式进行操作时,其他一切(例如事件处理程序、行更新等)似乎都可以正常工作,但您描述的奇怪的列重新排序行为除外
经过多次尝试和错误,并将我的代码与提供的示例进行比较,结果证明我的错误在于在初始化过程中没有正确设置列。显然,当使用空列数组调用new Slick.Grid时,会出现这种奇怪的行为
我所做的修复就是简单地用一个伪非空列数组初始化网格,然后稍后仍然调用setColumns来设置实际列。e、 g
// intialize myGrid with dummy column array
var myGrid = new Slick.Grid(
"#myGrid", dataView,
[{id: "dummy"}], options);
在我做了这个单一的改变之后,其他的一切都如预期的那样工作
我花了一点时间才弄明白,但我希望它能帮助您或其他可能遇到类似问题的人。非常感谢!我也有同样的问题。这就解决了问题。回答得很好。