easyui datagrid columns 如何取得json 内嵌对象(many-to-one POJO class)

http://www.iteye.com/problems/44119

http://hi.baidu.com/lapson_85/item/7733586e60b08500a1cf0f8d

————————————————————————————————————————————————————————————————————————————————————————

1. json的数据格式:

var map = {"uname":‘‘,"upwd":‘‘,"role":{“rolename”:‘‘,"roleLevel":‘‘}}

把这个json格式绑定到datagrid的filed属性上:

columns : [ [ 
{
  field : uname,
  title : uname,
width : 200,
rowspan : 2,
align : ‘center‘
},{
  field : upwd,
  title : upwd,
width : 80,
rowspan : 2,
align : ‘center‘
}, {
  field :‘ role.rolename’ ,
  title : ‘角色名称‘,
width : 100,
rowspan : 2,
align : ‘center‘
}, {
  field : ‘role . roleLevel’ ,
  title : ‘等级‘,
width : 80,
rowspan : 2,
value : 1,
align : ‘center‘
  }]]

jquery easyui 是不支持嵌套对象的数据转化的。。比如:(role.roleLevel)

我们必须修改源代码:

我的用的是appendRow 和updateRow 2个方法。所以修改这2个方法的赋值地方

如果用到appendRow:

//cc.push(_571[_573]); --源代码    7062行

改为:
cc.push(eval("_571[‘"+_573.replace(/\./g,"‘][‘")+"‘]"));

如果用到updateRow :

//cell.html(rows[_57a][_57b]); -- 源代码   7638行

改为:
cell.html(eval("rows[_57a][‘"+_57b.replace(/\./g,"‘][‘")+"‘]"));

注意:我的jquery easyui 的版本为1.2.6的版本

请加qq群:100969361

——————————————————————

    {field:‘productType‘,title:‘产品类别‘,width:160,formatter:function(value,rowData,rowIndex){
        //可以试试这个对不对
        //return value.prodType;
        return rowData.productType.prodType;
    }},    
时间: 2024-12-06 05:40:44

easyui datagrid columns 如何取得json 内嵌对象(many-to-one POJO class)的相关文章

Elastic search中使用nested类型的内嵌对象

在大数据的应用环境中,往往使用反范式设计来提高读写性能. 假设我们有个类似简书的系统,系统里有文章,用户也可以对文章进行赞赏.在关系型数据库中,如果按照数据库范式设计,需要两张表:一张文章表和一张赞赏历史记录表,赞赏历史记录表包括了赞赏者姓名和赞赏金额. 在Elastic search中,由于都是json格式存储,则可以在一个index存储系统中的文章及其赞赏记录,这种情况下需要在elastic search中使用nested类型的内嵌对象.因为如果使用数组或者object对象的话,赞赏者姓名和

Android官方ORM数据库Room技术解决方案:@Embedded内嵌对象(二)

Android官方ORM数据库Room技术解决方案:@Embedded内嵌对象(二) (一)附录1简介了Android Room的基本使用.在附录1例子中,User对象元素均为普通的Java基本数据类型,但是实际的开发中,通常建立的持久化存储对象复杂,且通常是结构化的Java对象,互相之间存在引用或者内嵌关系. Android Room支持数据库表Java对象通过注解符@Embedded内嵌一个Java对象.这样就像过去的ORM数据库一样,比如构造一个名为Info的Java对象,作为一个成员变量

Jquery easyUI datagrid加载复杂JSON数据方法

1.JSON数据为: { "rows": [ { "itemNo": "1", "itemName": "12", "spec": "", "pattern": "", "itemCategory": { "id": "A01", "name": &

easyui datagrid columns的field支持属性的子属性(field.sonfield形式或者格式化程序形式)

所谓为了支持某属性的子属性,主要为了解决.在服务器返回的json格式的数据的某个属性带有自属性,而我们恰恰又需要使用到该子属性作为我们的datagrid的某个字段的.默认情况下datagrid只能支持一级属性字段(属性的属性字段属于二级字段). 对于这个问题的解决方案有两种方式 1.就是更改esayui源文件,使其支持field.sonfield的形式. javascript语法为我们提供了两种方式获取一个对象的属性:点字符连接和[]方式.使用[]可以很方便的将一个属性通过字符串的方式获取.但是

springmvc+easyui datagrid columns的field支持属性的子属性(field.sonfield形式或者格式化程序形式)

所谓为了支持某属性的子属性,主要为了解决:在服务器返回的json格式的数据的某个属性带有子属性,而我们恰恰又需要使用到该子属性作为我们的datagrid的某个字段的.默认情况下datagrid只能支持一级属性字段(属性的属性字段属于二级字段). 对于这个问题的解决方案有两种方式: 1.就是更改esayui源文件,使其支持field.sonfield的形式. javascript语法为我们提供了两种方式获取一个对象的属性:点字符连接和[]方式.使用[]可以很方便的将一个属性通过字符串的方式获取.但

easyui1.4.2 formatter处理json内嵌数据undefined

问题描述: easyui升级到1.4.2后,原来使用的获取json嵌套数据的函数"formatter: function (value,row) { return row.business.region }"不好使了,datagrid初始化加载数据的时候,会报错提示"region" undefined,数据无法正常显示. 原因: The 'formatter' function is called by $.fn.datagrid.defaults.view.ren

EasyUI DataGrid绑定嵌套的json数据

现有json数据如下: {"total":2,"rows": [{"BarrackGUID":"dc1be891-4489-4eb8-bb1d-ba1debd59b07","BarrackName":"屋舍一","BarrackNumber":"0001","BarrackArea":"100平米",&quo

easyui datagrid columns sorter 排序

var columns = [{ field: '月目标', title: '月目标', width: 60, sorter: sort_int }] ////按数字类型排序 自定义排序 function sort_int(a, b) { //indexOf("-"):没有返回-1 //第一个数正,第二个数负 if (a.indexOf("-") == -1 && b.indexOf("-") > -1) { return

EasyUI datagrid columns 中 field 区分大小写

columns: [ [ {field: 'id', title: 'ID'}, {field: 'name', title: 'NAME'}, {field: 'DT_CRT_TM', title: 'CRTTM'} ] ] 原文地址:https://www.cnblogs.com/hfultrastrong/p/9821672.html