Struts-jqGrid-plugin不显示时间戳

时间:2013-03-08 09:02:46

标签: jqgrid timestamp struts2-jquery

我在Web项目中使用 Struts2-jqGrid-plugin 来显示远程数据库中的数据。 现在,当我试图在json结果中显示日期时,我感到困惑。 在struts-action中,查询结果位于列表中。这是我在服务器端的json响应中的时间戳的src格式:

addtime: "2013-03-05T13:08:14"
dob: "1990-01-01T00:00:00"

最初,我的列表中的这个属性是时间戳类型,不知何故,在json响应中,它变成了这种格式。在我的页面上,jgGrid日期格式化程序只显示& nbsp&对于这个专栏。上面两列都不起作用。

<s:url var="ShowSubjectAction" action="showUserSubjects"
            namespace="Subject" />
    <sjg:grid gridModel="gridModel" id="SubjectGrid"
            caption="Subject Gird" dataType="json" href="%{ShowSubjectAction}"
            rowList="2,5,10,15" rowNum="2" rownumbers="true" pager="true"
            autowidth="true" height="200">
            <sjg:gridColumn name="id" index="id" title="ID" formatter="integer"
                sortable="false" />
            <sjg:gridColumn name="gender" index="gender" title="Gender"
                formatter="integer" />
            <sjg:gridColumn name="D.o.B" index="dob" title="D.o.B"
                formatter="date"
                formatoptions="{'srcformat':'Y-m-d H:i:sO','newformat':'d/m/Y'}" />
            <sjg:gridColumn name="AddTime" index="addtime" title="AddTime"
                formatter="date" />
    </sjg:grid>

有没有办法只使用jqGrid日期格式化程序而不是在我的服务器端转换它来正确显示它? 感谢。

1 个答案:

答案 0 :(得分:0)

如果您查看文档,您将看到可用的日期/时间格式化程序,如果这些格式化程序不够,您可以随时设置自己的自定义格式化程序并解析该值并自行重新格式化。

文档: http://www.trirand.com/jqgridwiki/doku.php?id=wiki:predefined_formatter

自定义格式化程序示例:

 formatter: customTimeFormatter, unformat: customTimeUnformatter, 

功能:

function customTimeFormatter(cellvalue, options, rowObject) {
....

function customTimeUnformatter(cellvalue, options, rowObject) {
....