我正在尝试在jqGrid中转换jodaDateFormat。
我的Entity类中的声明是:
@Type(type="org.jadira.usertype.dateandtime.joda.PersistentLocalDate")
@DateTimeFormat(iso=ISO.DATE)
@Column(nullable=false)
private LocalDate dateStart;
要在视图中查看此日期,我尝试在tagx文件中插入此javascript转换:
<script type="text/javascript">
<![CDATA[
jodaLDFormatter = function (cellValue, options) {
if(cellValue) {
return $.datepicker.formatDate(
'dd/MM/yyyy',
new Date(cellValue['year'],
cellValue['monthOfYear']-1,
cellValue['dayOfMonth']));
} else {
return '';
}
};
在JSP页面中,我以这种方式声明了列:
<table:jqcolumn id="l_list_dateStart" property="dateStart" formatter="jodaLDFormatter"/>
但我得到了这个:(来自页面的来源)
<td role="gridcell" style="" title="NaN/NaN/NaNNaN" aria-describedby="l_list_dateStart">NaN/NaN/NaNNaN</td>
我不想转换字符串中的每个日期,以便在jqGrid中查看它!
什么是正确的方法?!
答案 0 :(得分:1)
我认为你没有将Joda对象传递给视图。可能你从你的控制器发送了一个像[day, month, year]
这样的矢量。
如果我的猜测是正确的,您可以在colmodel
:
formatter: 'date', srcformat:'dd/mm/yy', date:'true'