从数据库中查询到的数据,有DateTime类型的日期数据,在返回到页面中时,如果经过了JSON序列化,则会把时间格式化成毫秒表示,就是很长的一串数字:
在页面中显示是这样的:
这种情况只需要在js中进行日期的格式化就可以了
$('#searchInfo').datagrid({
columns: [[
{ field: 'ck', checkbox: false },
{ title: '主键', field: 'b_basicInformationNumber', hidden: true },
{ title: '档案编号', field: 'b_ID', sortable: true, hidden: true, },
{ title: '姓名', field: 'b_name', sortable: true },
{ title: '性别', field: 'b_sex', sortable: true, },
{ title: '身份证号', field: 'b_idNumber', sortable: true, },
{ title: '接收方式', field: 'b_receivemode', sortable: true },
{ title: '本人身份', field: 'b_myidentity', sortable: true },
{ title: '学历', field: 'pmt_educationBackground', sortable: true },
{ title: '原工作单位', field: 'b_oldworkplace', sortable: true },
{ title: '缴费截止日期', field: 'b_stoptime', sortable: true, formatter:
function (value, row, index) { return changeDateFormat(value) } },
{ title: '档案在否', field: 'b_isrecord', sortable: true },
{ title: '操作', field:'oc',formatter: function (value, row, index) { return OperateColumn(value, row, index) } }
]]
})
通过对缴费截止日期列的格式化,通过方法changeDateFormat()来完成:
//转换日期格式
function changeDateFormat(cellval) {
if (cellval!=null) {
var date = new Date(parseInt(cellval.replace("/Date(", "").replace(")/", ""), 10));
var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
return date.getFullYear() + "-" + month + "-" + currentDate;
}
}
这样就完成了日期的转换: