jqGrid怎么对进行过formatter操作的列进行查询
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jqGrid怎么对进行过formatter操作的列进行查询相关的知识,希望对你有一定的参考价值。
对某一列进行格式化 实际值为(0,1,4)0:管理员 1:
发起人 4:
普通用户然后查询时只能输入0,1,4查询才正确
查询的时候转换下值不就可以了
就是那个文本域里的,然后你拿这个值匹配下,自己定义一个var,然后赋值给这个,如果不是3个中的一个,return false,alert一下 参考技术A name:'SILGI_FG',index:'SILGI_FG', width:15,edittype:'checkbox',formatter:function(cellvalue, options, rowObject) return f_checkbox(cellvalue,options,rowObject); ,
或者
name:'duration',index:'duration',width:100,align:'center',editable:true,formatter:fn1,
function fn1(cellvalue) //cellvalue表示当前单元格的值
var str = "";
var hour = 0;
}
大概是这样的,
自己运行就知道了本回答被提问者和网友采纳
JqGrid列表页
这个当我点击单选按钮时 咱么让黄颜色的样式也跟着过来啊,像下面这样
然后还有个问题,就是当我双击某行时,虽然单选按钮选中了,但是我要跳到下页修改这条数据时,却取不到数据。而我直接选中单选按钮过去修改时,却能取到数据??
grid中对列表cell属性格式化设置主要通过colmodel中formatter、formatoptions来设置
基本用法:
js 代码
jquery ("#jqgrid_id").jqgrid(
...
colmodel: [
...
name:'price', index:'price', formatter:'integer', formatoptions:thousandsseparator: ',',
...
]
...
);
formatter主要是设置格式化类型(integer、email等以及函数来支持自定义类型),formatoptions用来设置对应formatter的参数,jqgrid中预定义了常见的格式及其options:
integer
thousandsseparator: //千分位分隔符,
defaulvalue
number
decimalseparator,
//小数分隔符,如"."
thousandsseparator, //千分位分隔符,如","
decimalplaces, //小数保留位数
defaulvalue
currency
decimalseparator, //小数分隔符,如"."
thousandsseparator, //千分位分隔符,如","
decimalplaces, //小数保留位数
defaulvalue,
prefix //前缀,如加上"$"
suffix//后缀
date
srcformat, //source的本来格式
newformat //新格式
没有参数,会在该cell是email加上: mailto:name@domain.com
showlink
baselinkurl,
//在当前cell中加入link的url,如"jq/query.action"
showaction, //在baselinkurl后加入&action=actionname
addparam, //在baselinkurl后加入额外的参数,如"&name=aaaa"
target,
idname //默认会在baselinkurl后加入,如".action?id=1"。改如果设置idname="name",那么".action?name=1"。其中取值为当前rowid
checkbox
disabled //true/false 默认为true此时的checkbox不能编辑,如当前cell的值是1、0会将1选中
select
设置下拉框,没有参数,需要和colmodel里的editoptions配合使用
下面是一个使用的例子:
java代码
var datas = [
"id":1, "name":"name1", "price":123.1, "email":"abc@163.com", "amount":1123423, "gender":"1", "type":"0",
"id":2, "name":"name2", "price":1452.2, "email":"abc@163.com", "amount":12212321, "gender":"1", "type":"1",
"id":3, "name":"name3", "price":125454, "email":"abc@163.com", "amount":2345234, "gender":"0", "type":"0",
"id":4, "name":"name4", "price":23232.4, "email":"abc@163.com", "amount":2345234, "gender":"1", "type":"2"]
js 代码
colmodel:[
name:'id', index:'id', formatter: customfmatter,
name:'name', index:'name', formatter: "showlink", formatoptions:baselinkurl:"save.action",idname: "id", addparam:"&name=123",
name:'price', index:'price', formatter: "currency", formatoptions: thousandsseparator:",",decimalseparator:".", prefix:"$",
name:'email', index:'email', formatter: "email",
name:'amount', index:'amount', formatter: "number", formatoptions: thousandsseparator:",", defaulvalue:"",decimalplaces:3,
name:'gender', index:'gender', formatter: "checkbox",formatoptions:disabled:false,
name:'type', index:'type', formatter: "select", editoptions:value:"0:无效;1:正常;2:未知"
],
其中customfmatter声明如下
js 代码
function customfmatter(cellvalue, options, rowobject)
console.log(cellvalue);
console.log(options);
console.log(rowobject);
return "["+cellvalue+"]"; 参考技术B 你需要监听这个radio的事件手动 change去选中那条记录..自己嵌入的radiobutton选中不会影响jqGrid的选中事件................................
你后面说的跳到下页修改 不知道什么意思.你是怎么传值的本回答被提问者采纳
以上是关于jqGrid怎么对进行过formatter操作的列进行查询的主要内容,如果未能解决你的问题,请参考以下文章
jqgrid 中的“未定义”消息,“b.jgrid.formatter 未定义”