Extjs4处理json日期和时间

 

当ASP.NET后台使用JavaScriptSerializer这个组件将对象序列化为json,

1
2
3
4
5
6
7
    Hashtable ht = new Hashtable();//生成一个哈希表
    ht.Add("total", listu.Count);//保存数据总数
    ht.Add("rows", listu);//数据list对象
 
    JavaScriptSerializer jss = new JavaScriptSerializer();//.net 3.5自带的
JsonStr = jss.Serialize(ht);//序列化为json
    context.Response.Write(JsonStr);//输出json

生成的日期json格式是这样的//Date(1213718400000+0800)//

这种格式ExtJs不识别,导致Grid上无法正常显示。使用ExtJS4的时候,在列模式里像下面这样处理即可。

复制代码
 1 {
 2     text:'审核时间',
 3     dataIndex:'VALID_DATE',
 4     width:200,
 5     renderer: function(value) { 
 6         if(value){
 7             var dt=eval("new " + value.substr(1, value.length - 2)).toString();
 8         return Ext.util.Format.date(dt, "Y年m月d日H时i分s秒");//"Y年m月d日H时i分s秒" 
 9                  
10         }     
11        }
12 }
复制代码

 当ASP.NET后台使用Newtonsoft.Json(JSON.NET)这个组件将对象序列化为json,

1
2
3
4
5
6
    Hashtable ht = new Hashtable();
    ht.Add("total", listu.Count);
    ht.Add("rows", listu);
 
    JsonStr = JsonConvert.SerializeObject(ht);//使用json.net序列化
context.Response.Write(JsonStr);

 生成的日期格式是标准的日期像这样子:

"2013-01-15T15
:00:00"
1
2
3
4
5
6
7
{
    text:'审核时间',
    dataIndex:'VALID_DATE',
    width:200,
    xtype:'datecolumn',
    format:'Y年m月d日H时i分s秒'
}

 最终前台显示结果一样,

 

posted @   DevFans  阅读(1749)  评论(7编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示