zoukankan      html  css  js  c++  java
  • 基于layui的数据列表展示数据中template的作用。使得日期等数据符合预期进行展示

    1. 对于数据的列表展示(采用layui的table进行展示),常常不能展示符合自己意愿的样子。看图说话

      1.1 应展示的数据的样子

      

      

      1.2 实际数据的样子

      

    2. 相关js代码

      2.1 “错误”的js片段

    // 设置列表属性
    initData.tableHead.push( {
        field : 'cTime',
        title : '创建时间',
        width : cols[0]
    }, {
        field : 'sTime',
        title : '开始时间',
        width : cols[1]
    }, {
        field : 'eTime',
        title : '结束时间',
        width : cols[2]
    }, {
        field : 'eType',
        title : '教育类型',
        width : cols[3]
    });

      2.2 增加模板template,以达到相应效果

    <div id="templateDiv">
        <script type="text/html" id="eType">
                <div>
                {{# var fu = function(){
                                var eType = d.eType;
                                if(eType == 1){return "幼儿园";}
                                else if(eType == 2){return "学前班";}
                                else if(eType == 3){return "小学";}
                                else if(eType == 4){return "初中";}
                                else if(eType == 5){return "高中";}
                                else if(eType == 6){return "中专";}
                                else if(eType == 7){return "大学";}
                                else if(eType == 8){return "大专";}
                                else if(eType == 9){return "研究生";}
                                else if(eType == 10){return "博士生";}
                                else if(eType == 11){return "博士后";}
                                else{return "其它";}
                            }
                }}
                {{fu()}}
                </div>
            </script>
        <script type="text/html" id="sTime">  
                  <div>
                {{# var fu = function(){
                                var sTime = d.sTime;
                                if(null != sTime){return formatTime(sTime, "yyyy-MM-dd");}
                            }
                }}
                {{fu()}}
                </div>
            </script>
        <script type="text/html" id="eTime">  
                  <div>
                {{# var fu = function(){
                                var eTime = d.eTime;
                                if(null != eTime){return formatTime(eTime, "yyyy-MM-dd");}
                            }
                }}
                {{fu()}}
                </div>
            </script>
    </div>

      d是layui封装的。代表每一行的数据对象,模板中对应的sTime、eTime、eType是后台对象必须存在属性,才能相应进行转换。

      2.3 加入对应的template后,“正确”的js片段

    // 设置列表属性
    initData.tableHead.push( {
        field : 'cTime',
        title : '创建时间',
        width : cols[0],
        templet : '#datetime'
    }, {
        field : 'sTime',
        title : '开始时间',
        width : cols[1],
        templet : '#sTime'
    }, {
        field : 'eTime',
        title : '结束时间',
        width : cols[2],
        templet : '#sTime'
    }, {
        field : 'eType',
        title : '教育类型',
        width : cols[3],
        templet : '#eType'
    });

      template : ‘#datetime’ 此模板是layui定义好的,是"yyyy-MM-dd HH:mm:ss"格式,可以直接使用。其他格式需要自定义。

    3. 修改正确之后展示的样子

      

  • 相关阅读:
    微服务简介
    Apache httpd.conf
    搭建PHP开发环境
    搭建Apache开发环境
    Swift 项目编译优化(一)
    用Flutter 写一个简单页面
    Sign In With Apple(一)(转)
    Xcode DeviceSupport
    MQTT初始篇笔记整理
    UITableView使用过程中可能遇到的问题
  • 原文地址:https://www.cnblogs.com/feiyang930112/p/9232971.html
Copyright © 2011-2022 走看看