zoukankan      html  css  js  c++  java
  • jqGrid使用setColProp方法动态改变列属性

    在使用jqGrid插件时,有时我们需要动态改变列的属性,可使用setColProp方法,用法如下

    jQuery(”#grid_id”).setColProp('colname',{editoptions:{value:“True:False”}});

    这里举个详细的例子。

    使用Form Editing(弹出一个新的编辑窗口进行编辑和新增)的方式来修改内容时,根据行id的内容来决定该行是否可编辑,如果id号以字符“p"打头,则该行的groupname可编辑,否则就不可编辑。代码如下

    --------------------------------------------------------------------------------------

    //修改通讯录,如果是固定人员,即id不以p开头,则不允许编辑分组groupname
    function edit(){
    var gr = jQuery("#gridTable").jqGrid('getGridParam','selrow');
    var rowdata=$("#gridTable").jqGrid().getRowData(gr);
    var options={350,top:300,left:600,reloadAfterSubmit:true,closeAfterEdit:true,
    };
    if( rowdata != null ){
    if(rowdata.id.indexOf("p") == 0){
    $("#gridTable").jqGrid('editGridRow',gr,options);
    }else{
    $("#gridTable").setColProp('groupname',{editable:{value:"True:False"}});//设置editable属性由true改为false
    $("#gridTable").jqGrid('editGridRow',gr,options);

    }else alert("请选择要编辑的行");
    };

    ---------------------------------------------------------------------------------------


    使用jqGrid提供的setColProp方法对于动态改变列属性是非常有用的,但是有些属性的修改并不会起效。具体是哪些属性,读者可自行验证。

    补充:
    编辑jqGrid中的内容的方法有三种
    Cell Editing——只允许修改某一个单元格内容
    Inline Editing——允许在jqGrid中直接修改某一行的数据两种修改jqGrid内容的方式
    Form Editing——弹出一个新的编辑窗口进行编辑和新增
    具体请参考其他教程,在此不再赘述。


  • 相关阅读:
    luogu4365 秘密袭击 (生成函数+线段树合并+拉格朗日插值)
    [模板]左偏树
    luogu4166 最大土地面积 (旋转卡壳)
    bzoj3168 钙铁锌硒维生素 (矩阵求逆+二分图最小字典序匹配)
    [模板]矩阵树定理
    [模板]快速傅里叶变换(FFT)
    [模板]Min_25筛
    [模板]杜教筛
    [模板]莫比乌斯反演
    DrawerLayout—侧拉栏的使用
  • 原文地址:https://www.cnblogs.com/zhmhhu/p/5867143.html
Copyright © 2011-2022 走看看