jqGrid使用setColProp方法动态改变列属性

时间:2022-09-22 14:59:15

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

jqGrid使用setColProp方法动态改变列属性的更多相关文章

  1. easyui如何动态改变列的编辑属性

    动态改变列的编辑属性 var tt=$('#dg').datagrid('getColumnOption', 'yearContent'); //通过列名获得此列 tt.editor={type:'t ...

  2. 雷林鹏分享:jQuery EasyUI 数据网格 - 动态改变列

    jQuery EasyUI 数据网格 - 动态改变列 数据网格(DataGrid)列可以使用 'columns' 属性简单地定义.如果您想动态地改变列,那根本没有问题.为了改变列,您可以重新调用dat ...

  3. Android 动态改变布局属性RelativeLayout.LayoutParams.addRule()

    我们知道,在 RelativeLayout 布局中有很多特殊的属性,通常在载入布局之前,在相关的xml文件中进行静态设置即可. 但是,在有些情况下,我们需要动态设置布局的属性,在不同的条件下设置不同的 ...

  4. 代码中动态改变布局属性RelativeLayout.LayoutParams.addRule()

    我们知道,在 RelativeLayout 布局中有很多特殊的属性,通常在载入布局之前,在相关的xml文件中进行静态设置即可. 但是,在有些情况下,我们需要动态设置布局的属性,在不同的条件下设置不同的 ...

  5. 扩展jQuery easyui datagrid增加动态改变列编辑的类型

    $.extend($.fn.datagrid.methods, { addEditor : function(jq, param) { if (param instanceof Array) { $. ...

  6. 重新认识HBase,Cassandra列存储——本质是还是行存储,只是可以动态改变列(每行对应的数据字段)数量而已,当心不是parquet

    行先是以一种非常独特的方式被索引,随后Bigtable利用行键对数据进行分割,将它们分布到集群中.列可以被迅速地定义在行中,让Bigtable适用于大多数的非模式环境. 数据在表面上最初是由行进行排列 ...

  7. 定义一个Book类,有书名,价格,作者等信息。定义相应的方法来改变这些属性的值。定义一个方法来显示Book的所有信息。

    package com.fs.test; public class Test { public static void main(String[] args) { // 先声明后赋值 book b;/ ...

  8. EasyUI datagrid动态生成列

    任务描述:根据用户选择时间段,生成列数据,如图

  9. extjs中第一次访问有效,第二次访问出现部分组件无法显示的,动态改变组件的label值的方法,ExtJs中组件最好少使用ID属性(推荐更多使用Name属性)

    在公司做的一个OA项目中,曾经就遇到了这样的一个问题:(我是在jsp中的div中将js render到div中去的)第一次访问此界面的时候,formpanel上的组件能正常显示,不刷新整个页面的前提下 ...

随机推荐

  1. IT软件技术人员的职位路线(从程序员到技术总监) - 部门管理经验谈

    以前写过一个文(IT从业者的职业道路(从程序员到部门经理) - 项目管理系列文章),主要介绍笔者的职业发展之路,不过该文需要后续了,因为笔者现在从事的是“产品经理”一职.从笔者的导航文([置顶]博文快 ...

  2. centos7安装svn1.8.16

    svn下载地址:http://subversion.apache.org/download/ svn要依赖一些包,可以提前装好 yum -y install apr-util apr-util-dev ...

  3. String与StringBuilder之间区别(转)

    当我们在初学使用C#时,常常会不知道该用StringBuilder合适还是用String高效,下面是我在学习当中对StringBuilder和String的区别总结,分享给大家. String类有不可 ...

  4. java面试题之ssh

    1.写出你熟悉的开源框架以及各自的作用(项目中为什么使用SSH) 答:框架:hibernate,spring,struts1/struts2. Hibernate主要用于数据持久化:封装了JDBC操作 ...

  5. BZOJ 2286 消耗战

    虚树裸题. 23333以后memset千万慎用. #include<iostream> #include<cstdio> #include<cstring> #in ...

  6. ISO7816协议的几个关键时间特性

    PPS: PPS是在PCK起始延后12个etu后完成,这个在2004版中是16etu 进行错误提示时,错误提示的延时时间是1etu到2etu 当D=64时,终端必须确保当前发出的第一个字符和最后一个接 ...

  7. SQL Server索引进阶:第九级,读懂执行计划

    原文地址: Stairway to SQL Server Indexes: Level 9,Reading Query Plans 本文是SQL Server索引进阶系列(Stairway to SQ ...

  8. &lbrack;转&rsqb;JavaScript Namespaces and Modules

    Namespaces In most programming languages we know the concept of namespaces (or packages).Namespaces ...

  9. Open-Falcon第一步环境准备(小米开源互联网企业级监控系统)

    1.环境安装 本文采取rpm安装方式,大家也可以用源码包安装. wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release- ...

  10. 201521123016 《Java程序设计》第2周学习总结

    1. 本周学习总结 JAVA中string对象创建后不可修改. 使用StringBuilder编写代码,减少内存空间的占用. 字符串使用"+"拼接,拼接后其他类型会被转化为字符串. ...