参考文章: http://www.trirand.com/jqgridwiki/doku.php?id=wiki:colmodel_options
ColModel是jqGrid里面最核心的属性。大部分配置都在这里面进行。所有的属性的含义对应如下:
Property | Type | Description | Default |
align | string | Defines the alignment of the cell in the Body layer, not in header cell. Possible values: left, center, right. {name:’id’,align:’left’},实现左对齐。 | left |
classes | string | This option allow to add classes to the column. If more than one class will be used a space should be set. By example classes:’class1 class2′ will set a class1 and class2 to every cell on that column. In the grid css there is a predefined class ui-ellipsis which allow to attach ellipsis to a particular row. Also this will work in FireFox too. | empty string |
datefmt | string | Governs format of sorttype:date (when datetype is set to local) and editrules {date:true} fields. Determines the expected date format for that column. Uses a PHP-like date formatting. Currently ”/”, ”-”, and ”.” are supported as date separators. Valid formats are: | ISODate (Y-m-d) |
defval | string | The default value for the search field. This option is used only in Custom Searching and will be set as initial search. | empty |
editable | boolean | Defines if the field is editable. This option is used in cell, inline and form modules. | false |
editoptions | array | Array of allowed options (attributes) for edittype option editing | empty array |
editrules | array | sets additional rules for the editable field editing | empty array |
edittype | string | Defines the edit type for inline and form editing Possible values: text, textarea, select, checkbox, password, button, image and file. | text |
fixed | boolean | If set to true this option does not allow recalculation of the width of the column if shrinkToFit option is set to true. Also the width does not change if a setGridWidth method is used to change the grid width. | false |
formoptions | array | Defines various options for form editing. | empty |
formatoptions | array | Format options can be defined for particular columns, overwriting the defaults from the language file. See Formatter for more details. | none |
formatter | mixed | The predefined types (string) or custom function name that controls the format of this field. {name:’sex’,index:’sex’, align:’center’,width:60,editable:true,edittype:’select’,editoptions:{value:’0:待定;1:男;2:女’},formatter:function(cellvalue, options, rowObject){ | none |
hidedlg | boolean | If set to true this column will not appear in the modal dialog where users can choose which columns to show or hide. | false |
hidden | boolean | Defines if this column is hidden at initialization. | false |
index | string | Set the index name when sorting. Passed as sidx parameter. | empty string |
jsonmap | string | Defines the json mapping for the column in the incoming json string. | none |
key | boolean | In case if there is no id from server, this can be set as as id for the unique row id. Only one column can have this property. If there are more than one key the grid finds the first one and the second is ignored. | false |
label | string | When colNames array is empty, defines the heading for this column. If both the colNames array and this setting are empty, the heading for this column comes from the name property. | none |
name | string | Set the unique name in the grid for the column. This property is required. As well as other words used as property/event names, the reserved words (which cannot be used for names) include subgrid, cb and rn. | Required |
resizable | boolean | Defines if the column can be re sized | true |
search | boolean | When used in search modules, disables or enables searching on that column. | true |
searchoptions | array | Defines the search options used searching | empty |
sortable | boolean | Defines is this can be sorted. | true |
sorttype | string | Used when datatype is local. Defines the type of the column for appropriate sorting.Possible values: | text |
stype | string | Determines the type of the element when searching. | text |
surl | string | Valid only in Custom Searching and edittype : ‘select’ and describes the url from where we can get already-constructed select element | empty string |
width | number | Set the initial width of the column, in pixels. This value currently can not be set as percentage {name:’id’,index:’id’, width:180,editable:true,editoptions:{readonly:true,size:10}} | 150 |
xmlmap | string | Defines the xml mapping for the column in the incomming xml file. | none |
unformat | function | Custom function to “unformat” a value of the cell when used in editing Unformat is also called during sort operations. The value returned by unformat is the value compared during the sort.) | null |
重要选项
- name :为Grid中的每个列设置唯一的名称,这是一个必需选项,其中保留字包括subgrid、cb、rn。
- index :设置排序时所使用的索引名称,这个index名称会作为sidx参数(prmNames中设置的)传递到Server。
- label :当jqGrid的colNames选项数组为空时,为各列指定题头。如果colNames和此项都为空时,则name选项值会成为题头。
- width :设置列的宽度,目前只能接受以px为单位的数值,默认为150。
- sortable :设置该列是否可以排序,默认为true。
- search :设置该列是否可以被列为搜索条件,默认为true。
- resizable :设置列是否可以变更尺寸,默认为true。
- hidden :设置此列初始化时是否为隐藏状态,默认为false。
- formatter :预设类型或用来格式化该列的自定义函数名。常用预设格式有:integer、date、currency、number等
与查询相关的三个选项:
- search :决定该列是否被列作查询条件,默认为true。
- stype :决定该列的输入方式;text:创建一个输入框;select:创建一个select下拉列表。
- searchoptions :对于查询的特定选项;应注意区分,此options选项不同于searchGrid方法的options选项。
searchoptions选项的各个属性(具体参考官方文档 http://www.trirand.com/jqgridwiki/doku.php?id=wiki:singe_searching ):
- dataUrl :这个属性只在colModel的stype属性为“select”的时候才有效;此选项表示从何处载入select元素;当设置了此属性的时候,jqGrid将会使用ajax请求得到有效的select HTML,来填充select下拉菜单的位置。例如<select><option value=“1”>One</option> <option value=“2”>Two</option></select>;这一过程仅执行一次。
- buildSelect :此属性仅当dataUrl被设置的情况下有效;当从Server中无法得到构建好的有效的select HTML元素的时候,可以使用自定义的这个方法,生成完整有效的select HTML元素;此方法的参数即是Server的response。
- dataInit :如果设置此选项,则此选项对应的方法会在创建HTML元素的时候,执行一次;对于制定的方法,HTML元素会被当做参数传递进去。
- attr :此选项的值是一个object,用来在创建HTML元素的时候,设置这个元素的合法属性。
- searchhidden :默认情况下,Grid表格中隐藏的列是不会被列出查询条件的;如果仍需要将隐藏的某列,列为查询条件,则将该列的searchhidden选项设为 true。
- sopt :类似于searchGrid方法的sopt选项(详见上一篇文章),用于指定条件比较的方式。如果不设置,则默认使用所有方式,即: ['eq','ne','lt','le','gt','ge','bw','bn','in','ni','ew','en','cn','nc']。
- defaultValue :查询输入框中的默认值。