1. 程式人生 > >【BootStrap】——Table控制元件將時間戳更改為日期格式

【BootStrap】——Table控制元件將時間戳更改為日期格式

前言
     小編最近一直在公司積分系統的bug海洋中,bug天天有,程式碼天天敲啊,這不,又出現了新的問題,獲取時間的方法當經過json序列化後資料就變成了時間戳格式,別急,別急,我就是猴子請來的救兵,看我怎麼解決掉你~~

正文
 一、Table顯示日期問題
    好好的日期給變成了時間戳:

分析:

    按照時間戳格式擷取相應字串轉換為相應格式的日期

修改後程式碼:js檔案

var TableInit = function () {
    var oTableInit = new Object();
    //初始化Table
    oTableInit.Init = function () {
        $("#table").bootstrapTable('destroy');  //避免重複執行,需要銷燬
        $('#table').bootstrapTable({
            url: '/ConfluenceSurvey/QueryTableInfoa', //請求後臺的URL(*)
            method: 'get',                      //請求方式(*)
            striped: true,                      //是否顯示行間隔
            sortable: true,                    //是否啟用排序
            sortName: 'date',
            sortOrder: "desc",                   //排序方式
            queryParams: oTableInit.queryParams, //傳遞引數(*)
            sidePagination: "client",           //分頁方式:client客戶端分頁,server服務端分頁(*)
            pageNumber: 1,                       //初始化載入第一頁,預設第一頁
            pageSize: 10,                       //每頁的記錄行數(*)
            pageList: [10, 25, 50, 100],        //可供選擇的每頁的行數(*)
            height: 500,                        //行高,如果沒有設定height屬性,表格自動根據記錄條數覺得表格高度
           
            columns: [{
                checkbox: true
 
            }, {
                field: 'date',
                title: '日期',
 
                sortable: true,
                //——修改——獲取日期列的值進行轉換
                formatter: function (value, row, index) {
                    return changeDateFormat(value)
                }
 
            }, {
                field: 'wsScore',
                title: '衛生'
            }, {
                field: 'jlScore',
                title: '紀律'
            }, {
                field: 'bkScore',
                title: '部落格'
            }, {
                field: 'xsScore',
                title: '學術'
            }, {
                field: 'fqScore',
                title: '番茄'
            }, {
           
                field: 'dayMcoin',
                title: '今日得分'
            }, {
                field: 'totalMcoin',
                title: '到此日的積分'
            }]
        });
    };
           
        
 
        //修改——轉換日期格式(時間戳轉換為datetime格式)
        function changeDateFormat(cellval) {
            if (cellval != null) {
                var d = new Date(cellval);
                var times=d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();
                return times;
            } else {
                return cellval;
            }
        }

修改後效果:

二、與日期鬥智鬥勇的歲月(我遇到的奇葩問題)

 1、日期排序錯亂      

分析:表格中顯示的日期格式是String型別,字串格式的日期比較大小是通過計算每個字串中相應Char物件的數值來比較兩個指定的String物件;

2、明明庫裡有記錄,就是查不到資料
      linq語句轉成sql在navicat中查詢沒有問題的,這是為什麼,為什麼,為什麼呢? 

     告訴你一個坑爹的原因,真的是很坑,英文作業系統的問題!頁面上獲取的日期被轉成英文時間了,沒錯,說好的“2017/7/14 00:00::00”變成了"7/14/2017 12:00:00 AM"

自己給自己挖的坑啊,啥也不說了,其實後面在轉換為中文也是可以滴,這樣就省事了,考慮周到也是很有必要的!!!

 

原文:https://blog.csdn.net/zt15732625878/article/details/75136545