[筆記]格式化jqGrid中的日期與時間,解決時分秒都顯示為0


項目中的一個jqGrid列表頁面的一列需要顯示日期和時間,如:2011-08-10 10:20:30,查閱官方wiki文檔的說明和例子,然后在colModel的需要格式化時間的列的formatter:'date'的后面加了一些 formatoptions配置,但IE和FF瀏覽器中都沒有效果,也沒提示什么錯誤~

    無奈官方wiki文檔的日期時間格式化部分的說明和例子對我來說不夠細,只好查看jquery.fmatter.js中的源代碼的DateFormat部 分,還好查出來了,原來srcformat和newformat的值都可以用masks里的那些選項,而masks里正好有我需要的日期時間格式—— ISO8601Long:"Y-m-d H:i:s"。哈,這下好了,馬上在formatter:'date'后寫上formatoptions:{newformat: 'Y-m-d H:i:s'}並保存,然后清空IE和FF瀏覽器的緩存重新訪問~

    奇怪,現在數據格式是符合要求了,但是時分秒都顯示為0,調試了下后台數據,發現傳送過來的日期時間數據里的時間部分並不為0!!!難道是jqGrid默 認日期格式化配置的影響?再看看grid.locale-zh_CN.js中的日期格式化部分的配置,果然是srcformat: 'Y-m-d'啊!這就是為什么我設置了formatoptions:{newformat: 'Y-m-d H:i:s'}后顯示的時分秒部分值都為0,原來是源日期時間格式中沒有格式化時分秒(H:i:s)部分,然后新格式化后的時間就默認將源格式化部分的時 分秒設置為0!

    哈哈,再將formatter:'date'的formatoptions配置從formatoptions:{newformat: 'Y-m-d H:i:s'}改成formatoptions:{srcformat: 'Y-m-d H:i:s', newformat: 'Y-m-d H:i:s'}並保存,再清空IE和FF瀏覽器的緩存重新訪問,哈哈,兩種瀏覽器都OK了!

[搬自BlogBus]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM