这是我实现flexigrid的方式

$('.mytable').flexigrid({
    url: '<c:url value="/callController"/>',
    dataType: 'json',
    colModel : [
        {display: 'ID', name : 'id', width : 40, sortable : true, align: 'right'},
        {display: 'Name', name : 'name', width : 150, sortable : true, align: 'left'},
        {display: 'Checkbox checked', name : 'checked', width : 150, sortable : false, align: 'left' }
        ],
    sortname: "id",
    sortorder: "asc",
    usepager: true,
    title: false,
    useRp: false,
    rp: 15,
    showTableToggleBtn: false,
    showToggleBtn: false,
            singleSelect: true,
            striped: true,
    height: 200,
    width: 'auto'
});


如果您看到第三列,则“ checked”的值返回为true / false(布尔值),但我想在表上将其显示为Yes / No。

呈现表格时,有什么方法可以将此true / false值转换为Yes / No?

平台:Java,SpringMVC,JQuery

最佳答案

您可以提供“ preProcess”回调函数来更改/格式化由ajax调用返回的数据,然后再显示它们:

preProcess: function(data) {
    $.each(data.rows, function(i, row) {
        row.checked = row.checked ? 'Yes' : 'No';
    });
    return data;
},


Demo on JSFiddle



注意:除了Flexigrid project page上的以下注释之外,我没有真正看到“ preProcess”回调的记录位置:


  新的preProcess API,可让您修改或处理由
  服务器传递给Flexigrid之前,允许您使用自己的服务器
  例如JSON格式。


但是,它看起来很像jQuery .ajax function的“ dataFilter”回调。

09-25 15:39