如果是特定日期,请将日期设置为待定
本文关键字:日期 设置 待定 如果 | 更新日期: 2023-09-27 17:58:35
我试着在网站上四处查看,看看以前是否有人问过这个问题,但我似乎找不到任何关于它的信息。所以我使用mvc,并有一个控制器页面,可以读取sqlserver数据库中的数据,并将其显示在包含jqgrid的视图中。
我的问题是,如何获取特定的日期时间值"1900-01-01 00:00:00.00"并将其显示为tbd?
这是我为两个日期时间列编写的代码:
schedule.EstimatedQAStartDate = (!reader.IsDBNull(4)) ? reader.GetDateTime(4) : (DateTime?)null;
schedule.EstimatedorProjectedReleaseDate = (!reader.IsDBNull(5)) ? reader.GetDateTime(5) : (DateTime?)null;
jqGrid的解决方案是为日期列提供一个格式化程序,如下所示
这也是我为您创建的一个jsfiddle示例。
function formatDate(cellValue, options, rowObject) {
if(cellValue=="1900-01-01 00:00:00.00")
return "tbd";
else
return cellValue;
};
"use strict";
var mydata = [
{id:"1", DocGroupName: "2", Date: "1900-01-01 00:00:00.00", Mandatory: "Yes"},
{id:"2", DocGroupName: "6", Date: "2005-03-02 05:00:00.00", Mandatory: "No"},
{id:"3", DocGroupName: "6", Date: "2016-08-05 08:40:00.00", Mandatory: "No"},
];
$("#list").jqGrid({
//url:'php.scripts/customers.get.php',
//datatype: 'xml',
//mtype: 'POST',
datatype: "local",
data: mydata,
height: "auto",
colModel :[
{name:'id', index:'id', width:55},
{name:'DocGroupName', width:90},
{name:'Date', formatter:formatDate, width:90, editable: true },
{name:'Mandatory', index:'Mandatory', width:90, editable: true}
],
pager: '#pager',
rowNum:10,
rowList:[10,20,30],
sortname: 'idcustomers',
sortorder: 'asc',
viewrecords: true,
gridview: true,
caption: 'Customers',
cellEdit: true,
cellsubmit: 'clientArray',
afterSaveCell: function(rowid,name,val,iRow,iCol) {
if(name=='DocGroupName')
{
var row = $('#list').jqGrid('getRowData',currentRow);
row.DocList='';
var row = $('#list').jqGrid('setRowData',currentRow,row);
}
},
beforeSaveCell: function(rowid,name,val,iRow,iCol) {
// var row = $("#list").getRowData(rowid);
var row = $('#list').jqGrid('getRowData',rowid);
currentRow= rowid;
},
});