【问题标题】:jqGrid - make all columns not sortable?jqGrid - 使所有列不可排序?
【发布时间】:2010-10-21 16:31:24
【问题描述】:

除了将sortable:false 添加到每列之外,有没有办法使网格上的所有列都不可排序?我知道您可以在网格级别设置全局选项,但不知道您是否可以在 colModel 级别进行设置。

【问题讨论】:

    标签: jquery configuration jqgrid


    【解决方案1】:

    你可以使用colmodel模板来实现这个

    cmTemplate: {sortable:false}
    

    【讨论】:

      【解决方案2】:

      jqGrid 中没有对应于colModel 中的sortable:false 的全局设置。此外,jqGrid 直接读取colModel 的值,而不使用每个列元素的一些默认设置。所以你必须在每一列中明确定义sortable:false

      另一方面,您可以执行以下操作:

      // we define simplified column model without repeating of the same information
      var cm = [
          {name:'id', key: true},
          {name:'name'},
          // ...
      ];
      // new we define "our standard" properties which will be the same in all columns
      var myStdModel = {width: 150, sortable: false};
      
      // we extend (or overwrite) "our standard" properties
      for (var i=0; i<cm.length; i++) {
          $.extend(cm, myStdModel);
          cm.index = cm.name;
      }
      
      $("#list").jqGrid ({
          colModel: cm, // we use the column model built before
          // all other settings
      });
      

      以这种方式,您可能可以归档您想要的相同结果,但以另一种方式。

      【讨论】:

      • 谢谢奥列格。我们将sortable:false 添加到每一列。
      • @Marcus:我建议并且可以说服 Tony 在下一个版本的 jqGrid 模板中包含 colModel 中的列(有关更多详细信息,请参阅 trirand.com/blog/?page_id=393/feature-request/…)。 github.com/tonytomov/jqGrid 上的当前 jqGrid 源已经包含新功能。我认为,这个消息对你来说会很有趣。
      猜你喜欢
      • 1970-01-01
      • 2016-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多