zoukankan      html  css  js  c++  java
  • EasyUI DataGrid 中字段 formatter 格式化不起作用

    今天用 EasyUI datagrid 来做列表,要对一些数据进行格式化,判断某字段状态时,发现 formatter 格式化对应的函数不起作用。

    <table id="list_data" title="未审核报表" class="easyui-datagrid" style=" auto;height:350px;" url=""
    	   toolbar="#toolbar" pagination="true" pagesize="10" total="20"
    	   rownumbers="true" fitcolumns="true" singleselect="true" pagelist="[10,20]" loadmsg="正在努力加载数据,请稍后...">
    	<thead>
    		<tr>
    			<th data-options="field:'报表名称',200,align:'center'">报表名称</th>
    			<th data-options="field:'报表分组',80,align:'center'">报表分组</th>
    			<th data-options="field:'报表类型',80,align:'center'">报表类型</th>
    			<th data-options="field:'报表分类',80,align:'center'">报表分类</th>
    			<th data-options="field:'制表人',80,align:'center'">上报人</th>
    			<th data-options="field:'实际报出日期',90,align:'center'" formatter="ChangeDateFormat">上报时间</th>
    			<th data-options="field:'填报单位',80,align:'center'">上报单位</th>
    			<th data-options="field:'审核状态',80,align:'center'">审核状态</th>
    			<th data-options="field:'审核状态',80,align:'center'" formatter="managerstr">操作</th>
    		</tr>
    	</thead>
    </table>
    出问题是这句: 
    <th data-options="field:'审核状态',80,align:'center'" formatter="managerstr">操作</th>

    后来检查发现 : 如果某列的 field值,在前面已经出现过,则后出现的同field列,在这里,我的是 “审核状态”,将按第一次出现的field列使用。如果第一次出现的field同值的列没有formatter,后续的formatter将无效。


    处理办法,function(value,rowData,rowIndex) 第二个参数rowData.属性名访问、

    function managerstr(value,rowData,rowIndex) {
            if (rowData["审核状态"] == "未审核")
                return "1";
            else if (rowData["审核状态"] == "已取回重填")
                return "2";
            else
                return "已经审核,不允许操作";
        }
  • 相关阅读:
    近两年项目回顾系列——velocity模板引擎
    求两个集合的交集和并集C#
    CI框架下JS/CSS文件路径的设置
    Apache下的 SSI 配置
    DOTA
    MySql 查询结果按照指定的顺序
    strtotime 方便获取前几天后几天
    CI框架的session失效原因
    正则解析多重循环模板
    PHP 多维数组按照指定的顺序进行排序
  • 原文地址:https://www.cnblogs.com/xiaoleiel/p/8316449.html
Copyright © 2011-2022 走看看