楚河之界 2022-07-11 18:10 采纳率: 97.4%
浏览 106
已结题

easyui datagrid field配置一样formatter无效

easyui datagrid的columns配置,如果存在2个field一样的配置,并且配置了不同的formatter返回不同内容,当生成datagrid内容时,datagrid获取列formatter返回内容只会生成一个field配置的formatter返回的内容,示例如下

    $("#dg").datagrid({
        title:'datagrid field出现相同值',
        columns: [[
            { title: 'column-1', field: 'filed1', formatter: function () { return 'data-1' } },
            { title: 'column-2', field: 'filed2', formatter: function () { return 'data-2' } },
            { title: 'column-3', field: 'filed1', formatter: function () { return 'data-3' } }]
        ],
        data: [[], [], [], []]
    });
  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2022-07-11 18:17
    关注

    因为easyui datagrid获取formatter时是通过当前列名遍历columns数组对比里面的json的field配置值,对比成功就返回第一个出现的formatter,所以不会得到第三列的formatter,内容也就和第一列的一样了。

    field配置不一样的,哪怕是数据中不存在的json键名称也是可以的。

    $("#dg").datagrid({
    title:'datagrid field配置不同列名称才能获取到对应的formatter',
    columns: [[
    { title: 'column-1', field: 'filed1', formatter: function () { return 'data-1' } },
    { title: 'column-2', field: 'filed2', formatter: function () { return 'data-2' } },
    { title: 'column-3', field: 'xxxx', formatter: function () { return 'data-3' } }]
    ],
    data: [[], [], [], []]
    });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月20日
  • 已采纳回答 7月12日
  • 创建了问题 7月11日