代码之家  ›  专栏  ›  技术社区  ›  bruno

带列重新排序的JQGrid

  •  3
  • bruno  · 技术社区  · 16 年前

    我有一个jqgrid,我可以在jqgrid中使用这个选项对我的列重新排序

        jQuery("#list").jqGrid({
                    sortable: true,
                    ... 
    });
    

    这个功能让我可以对所有列重新排序。但我想有些柱子必须在固定的地方。有办法解决这个问题吗?

    提前谢谢!

    布鲁诺

    4 回复  |  直到 16 年前
        1
  •  4
  •   Walter Stabosz    14 年前

    永不言败。jqGrid使用jQueryUI的Sortable类来执行列拖放功能。 http://jqueryui.com/demos/sortable/

    要从可排序列列表中删除列,请在呈现网格后运行以下两个命令(使用sortable:true)。

    // disable the sortable property on your target element 
    // (which was applied when jqGrid rendered the grid)
    $('tr.ui-jqgrid-labels').sortable({ cancel: 'th:#element_id'});
    // update the list of sortable item's, and exclude your target element
    $('tr.ui-jqgrid-labels').sortable({ items: "th:not(#element_id)" });
    

    注:

    也: 确保您了解两个可排序选项(网格级别和colmodel级别)之间的区别。在网格选项中,“sortable:true”表示可以通过拖放对列进行重新排序。在colmodel选项中,“sortable:true”意味着您可以通过单击列的标题对行重新排序。在网格选项上将sortable设置为true不会级联到colmodel选项。但是,在colmodel上,sortable默认为true。

        2
  •  3
  •   Mistic    12 年前

    现在在2013年,您可以定义“sortable”的“exclude”参数 ,如下所示:

    sortable: {
        exclude: '#'+ grid[0].id +'_actions_buttons'
    },
    
        3
  •  1
  •   Rigobert Song    16 年前

    sortable 对于 colModel

    colModel: [{ name: 'name', index: 'name', sortable: true },...
    

    签出 documentation 这很有帮助。

        4
  •  1
  •   user243956 user243956    16 年前