Razor 字符串(';yyyyMMddHHmmss';)到使用columns.Bound的Kendogrid的日期格式
从后端我收到一个格式为“yyyyMMddHHmmss”的字符串。当它显示在剑道网格中时,我需要它的格式为“MM/dd/yyyy HH:MM:ss” 我在一个MVC模型中工作,试图在从后端获取数据时更改日期,但当我们运行更新时,更新的行的格式错误 我试过:Razor 字符串(';yyyyMMddHHmmss';)到使用columns.Bound的Kendogrid的日期格式,razor,model-view-controller,kendo-ui,telerik,Razor,Model View Controller,Kendo Ui,Telerik,从后端我收到一个格式为“yyyyMMddHHmmss”的字符串。当它显示在剑道网格中时,我需要它的格式为“MM/dd/yyyy HH:MM:ss” 我在一个MVC模型中工作,试图在从后端获取数据时更改日期,但当我们运行更新时,更新的行的格式错误 我试过: columns.Bound(p => p.UploadDate).Format("{0:yyyyMMddHHmmss}"); 它不会格式化日期 我也尝试过以下的变化 columns.Bound(p => p.UploadDate
columns.Bound(p => p.UploadDate).Format("{0:yyyyMMddHHmmss}");
它不会格式化日期
我也尝试过以下的变化
columns.Bound(p => p.UploadDate).ClientTemplate("#=UploadDate ? kendo.toString(kendo.parseDate(UploadDate,yyyyMMddHHmmss), 'MM/dd/yyyy HH:mm:ss')#");
及
这两种方法都会在页面上创建“无效模板”错误 只有当UploadDate
是模型上的DateTime
对象时,.Format()
函数才会工作:
columns.Bound(p => p.UploadDate).Format("{0:yyyyMMddHHmmss}");
您的第一个ClientTemplate示例失败,因为您使用的是内联速记if语句,但缺少错误部分“:”(请参阅下面的客户端模板解决方案)
我相信您的第二个ClientTemplate示例失败了,因为“yyyyMMddHHmmss”不是标准的日期格式,因此kendo.dateParse()
函数失败
如果无法将字段转换为模型中的日期时间,则必须使用ClientTemplate。试试这个:
columns.Bound(p => p.UploadDate)
.ClientTemplate("#= UploadDate
? kendo.toString(kendo.parseDate(UploadDate, 'yyyyMMddHHmmss'), 'MM/dd/yyyy HH:mm:ss')
: '' #");
参考资料:
UploadDate
是您的型号上的DateTime
对象时,.Format()
功能才会工作:
columns.Bound(p => p.UploadDate).Format("{0:yyyyMMddHHmmss}");
您的第一个ClientTemplate示例失败,因为您使用的是内联速记if语句,但缺少错误部分“:”(请参阅下面的客户端模板解决方案)
我相信您的第二个ClientTemplate示例失败了,因为“yyyyMMddHHmmss”不是标准的日期格式,因此kendo.dateParse()
函数失败
如果无法将字段转换为模型中的日期时间,则必须使用ClientTemplate。试试这个:
columns.Bound(p => p.UploadDate)
.ClientTemplate("#= UploadDate
? kendo.toString(kendo.parseDate(UploadDate, 'yyyyMMddHHmmss'), 'MM/dd/yyyy HH:mm:ss')
: '' #");
参考资料: