1.修改默认的json格式为key:value

修改前

rows: [{id:'ZW',cell:['ZW','ZIMBABWE','Zimbabwe','ZWE','716']},{id:'ZW',cell:['ZW','ZIMBABWE','Zimbabwe','ZWE','716']}]

修改后

rows: [{id:'1',name:'Anson',sex:'男',email:'chents@gpcsoft',qq:'75526201'},{id:'2',name:'Anson',sex:'男',email:'chents@gpcsoft',qq:'75526201'}]

源码修改说明

找到 if (p.dataType=='json')

将其后的大括号{}内容改为:

$.each     (     data.rows,     function(i,row)     {     var tr = document.createElement('tr');     if (i % 2 && p.striped) tr.className = 'erow';
    if (row.id) tr.id = 'row' + row.id;
    //by anson QQ:75526201 chents@gpcsoft.com  转载请保留 var tdVal = [];
    //给每行添加id     if (p.rowId){
    $.each( data.rows[i], function(x,y){
    if(p.rowId==x){tr.setAttribute('id',y);     }

})     }
    if (p.colModel){
    for (j=0;j<p.colModel.length;j++){
    var cm = p.colModel[j];     //取列名 var seleceName = cm.name;     //过滤key     $.each( data.rows[i], function(x,y){
    if(seleceName==x){tdVal.push(y)}
    })
    }     }
    //add cell     $('thead tr:first th',g.hDiv).each     (     function ()     {
    var td = document.createElement('td');     var idx = $(this).attr('axis').substr(3);     td.align = this.align;     td.innerHTML = tdVal[idx];     //td.innerHTML = row.cell[idx];     $(tr).append(td);     td = null;     }     );
    if ($('thead',this.gDiv).length<1) //handle if grid has no headers     {

for (idx=0;idx<cell.length;idx++)     {     var td = document.createElement('td');     //td.innerHTML = row.cell[idx];     td.innerHTML = tdVal[idx];     $(tr).append(td);     td = null;     }     }
    $(tbody).append(tr);     tr = null;     }     );

2.加入checkbox

只要设置checkbox:true即可在前面显示多选框

源码修改说明

a.找到 $('div:eq('+n+')',g.cDrag).css({'left':cdpos+'px'}).show();

替换为:

//添加多选框 if (p.checkbox) { $('div:eq('+n+')',g.cDrag).css({'left':cdpos+22+'px'}).show(); } else{ $('div:eq('+n+')',g.cDrag).css({'left':cdpos+'px'}).show(); }

b.找到//add cell

前面插入:

//添加多选框 if (p.checkbox) {

var cth = $('<th/>');
    var cthch = $('<input type="checkbox" value="' + $(tr).attr('id') +'"/>');
    var objTr = $(tr);
    cthch.addClass("noborder").click(function(){
    if(this.checked){

objTr.addClass('trSelected');     }     else{     objTr.removeClass('trSelected');     }     })
    cth.addClass("cth").attr({ width: "22"}).append(cthch);

$(tr).prepend(cth);

}

c.找到$(this).toggleClass('trSelected');

后面插入:

//添加多选框 if(p.checkbox){ if($(this).hasClass('trSelected')){ $(this).find('input')[0].checked=true; } else{ $(this).find('input')[0].checked=false } }

d.找到if ($('th',g.hDiv).length)

在其后的{}大括号中加入

//添加多选框 if (p.checkbox) {     $('tr',g.hDiv).each(     function(){

var cth = $('<td/>');
    var cthch = $('<input type="checkbox"/>');
    cthch.click(function(){     if(this.checked){     $('tbody tr',g.bDiv).each(function(){     $(this).addClass('trSelected').find('input')[0].checked=true;     })     }     else{
    $('tbody tr',g.bDiv).each(function(){     $(this).removeClass('trSelected').find('input')[0].checked=false;     })     }     })
    cth.addClass("cth").attr({ width: "22" }).append(cthch);
    $(this).prepend(cth);
    })     };

e.找到p = $.extend({

添加一条默认设置

checkbox:false,//是否要多选框

flexigrid 修改json格式的更多相关文章

  1. DataSnap Server HTTP json格式修改 返回图片

    DataSnap Server HTTP json 格式修改  http://127.0.0.1:8080/datasnap/rest/TServerMethods1/EchoString/hello ...

  2. 修改 mvc webapi 默认返回 json 格式

    web api 默认的已 xml 格式返回数据 现在开发一般都是以 json 格式为主 下面配置让 webapi 默认返回 json ,在需要返回 xml 时只需要加一个查询参数 datatype=x ...

  3. 一个粗心的Bug,JSON格式不规范导致AJAX错误

    一.事件回放  今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...

  4. 【.net 深呼吸】聊聊WCF服务返回XML或JSON格式数据

    有时候,为了让数据可以“跨国经营”,尤其是HTTP Web有关的东东,会将数据内容以 XML 或 JSON 的格式返回,这样一来,不管客户端平台是四大文明古国,还是处于蒙昧时代的原始部落,都可以使用这 ...

  5. plist文件、NSUserDefault 对文件进行存储的类、json格式解析

    ========================== 文件操作 ========================== Δ一 .plist文件 .plist文件是一个属性字典数组的一个文件: .plis ...

  6. Struts2返回json格式数据踩坑记录

    事件起因 昨天提测修改冻结/解冻银行卡样式的功能,微姐测试过程中发现调用ajax请求耗时过长,今天来排查,发现浏览器请求/finance/ajax/freeze/ajaxGetShopLists时,对 ...

  7. WP8解析JSON格式(使用DataContractJsonSerializer类)(推荐)

    DataContractJsonSerializer是.NET自带的类,在解析JSON格式的时候使用起来方便快捷,至于生成方面由于暂时没用到就没去看了.使用需要引用System.Runtime.Ser ...

  8. MVC学习系列6--使用Ajax加载分部视图和Json格式的数据

    Ajax的应用在平时的工作中,很是常见,这篇文章,完全是为了,巩固复习. 我们先看看不使用json格式返回分部视图: 先说需求吧: 我有两个实体,一个是出版商[Publisher],一个是书[Book ...

  9. ArcGIS Server,rest路径输入要素json 格式描述

    以下内容只测试了简单线, 在ArcGIS Server 的rest路径下可以对服务进行操作,如Query等,这些操作可以输入json 格式要素描述或运行得到即输出json格式要素描述. 如博客:htt ...

随机推荐

  1. easy_install django==1.4.2_百度搜索

    easy_install django==1.4.2_百度搜索 安装指定版本的django

  2. python代码打印行号,文件名

    python 获取当前代码行号 import sys print "here is :",__file__,sys._getframe().f_lineno

  3. 实现怎样支持Android重力感应器Sensor编程

    添加当重力变化时的处理函数 在创建监听器时调用的函数 doSomething(x, y, z) 是自己定义的方法. 当手机倾斜方向改变时,监听器会调用该方法. 我们要做的,就是填充该方法,用于在重力发 ...

  4. Gulp及组件安装构建

    Gulp 是一款基于任务的设计模式的自动化工具,通过插件的配合解决全套前端解决方案,如静态页面压缩.图片压缩.JS合并.SASS同步编译并压缩CSS.服务器控制客户端同步刷新. Gulp安装 全局安装 ...

  5. live555从RTSP服务器读取数据到使用接收到的数据流程分析

    本文在linux环境下编译live555工程,并用cgdb调试工具对live555工程中的testProgs目录下的openRTSP的执行过程进行了跟踪分析,直到将从socket端读取视频数据并保存为 ...

  6. 【Java基础】foreach循环

    从一个小程序说起: class lesson6foreach { public static void main(String[] args) { int array[]={2,3,1,5,4,6}; ...

  7. Windows下安装Memcache

    安装步骤的时候只需要做两步: 第一步:安装memcache.exe 服务. 第二步:安装php_memcache.dll扩展,让php支持memcache. 1.安装 memcache.exe 服务 ...

  8. PHP学习笔记十四【面向对象】

    <?php class Cat{ public $name; public $age; public $color; } //创建一个对象 $cat1=new Cat(); $cat1-> ...

  9. 天天模拟器极速畅玩靠谱游戏《仙境传说RO:复兴》

    在电脑上用模拟器打开手游<仙境传说RO:复兴>,今天小编就来写一写天天模拟器的试玩教学. 首先先打开天天模拟器极速版. 在界面中找到鱼图标的靠谱游戏应用中心. 在应用中心中找到<仙境 ...

  10. 改错+GetMemory问题

    试题1: void test1() { ]; "; strcpy( string, str1 ); } 试题2: void test2() { charstring[],str1[]; in ...