• 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——弹出一个新的编辑窗口进行编辑和新增
    具体请参考其他教程,在此不再赘述。


  • 相关阅读:
    论财务的意义
    项目忙乱的原因
    回家的路
    但问耕耘
    做自己的主角
    坚持的意义
    觉醒的意义
    梦想的力量
    把自己当作一件艺术品
    九宫格年度计划
  • 原文地址:https://www.cnblogs.com/zhmhhu/p/5867143.html
Copyright © 2020-2023  润新知