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列表页

这个当我点击单选按钮时 咱么让黄颜色的样式也跟着过来啊,像下面这样

然后还有个问题,就是当我双击某行时,虽然单选按钮选中了,但是我要跳到下页修改这条数据时,却取不到数据。而我直接选中单选按钮过去修改时,却能取到数据??

参考技术A   列表页:
  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 //新格式
  email
  没有参数,会在该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使用

jqgrid 中的“未定义”消息,“b.jgrid.formatter 未定义”

JqGrid列表页

JQGRID报错,提示 '$.jgrid.formatter.integer' 为空或不是对象

根据另一列值禁用jqgrid中的超链接

Laravel / JQGrid - 按 laravel 动态属性排序