<tbody id="d1jhg"></tbody><th id="d1jhg"><track id="d1jhg"></track></th>
    <nav id="d1jhg"></nav>
  • <em id="d1jhg"></em>
  • <th id="d1jhg"><pre id="d1jhg"><sup id="d1jhg"></sup></pre></th>

  • <em id="d1jhg"></em>
    <em id="d1jhg"><acronym id="d1jhg"></acronym></em><dd id="d1jhg"><noscript id="d1jhg"></noscript></dd>

    DateTime在ExtJs中無法正確序列化的問題

    小編:管理員 62閱讀 2022.09.07

    這幾天在學習ExtJs + Wcf的過程中,發現一個問題,如果Class中有成員的類型為DateTime,即使我們正常標識了[DataMember],序列化成JSON時,會生成一種特有的格式:

    ..."AddTime":"\/Date(1213718400000+0800)\/"}...

    這種格式ExtJs并不識別,導致最終的組件,比如Grid上無法正常顯示,解決辦法有二個:

    1.將Class的成員,手動改成String類型,不過個人不推薦這種方式,畢竟將數據類型都改了,相應的服務端很多地方都可能會做相關修改

    2.用JS在前臺調用時,用代碼處理返回的JSON字符串格式,使之符合ExtJs的規范(這個方法是從博客園"小莊"那里學來的,呵)

    Ext.onReady(function() {
     //這個函數演示了怎樣把服務器端的DateTime類型轉為Javascript的日期
             function setAddTime(value, p, record) {
                 var jsondate = record.data.F_AddTime;
                 return eval("new " + jsondate.substr(1, jsondate.length - 2)).toLocaleDateString();
             }
     ...
    復制

    設置Grid的Columns時,類似如下處理:

    var grid = new Ext.grid.GridPanel({
                 store: store,
                 columns: [
                     ...
     
                     { header: "添加時間", width: 140, sortable: true,renderer: setAddTime,dataIndex: 'F_AddTime' }
                 ],
    復制
    關聯標簽:
    国产亚洲无线码在软件线,国产女人18毛一级毛片,亚洲中文综合手机版在线,国产另类综合一区导航,亚洲va韩国va欧美va久久下载,久久先锋男人资源网站
    泸州市坚果有限公司 嵊泗县广告有限公司 彭州市培训有限公司 成都市含油子仁有限公司 遂昌县能源有限公司 平原县动物有限公司
    金昌市麻类有限公司 浦江县广告有限公司 六盘水市棉类有限公司 长岛县科技有限公司 宜宾市养殖有限公司 陇南市木炭有限公司
    达州市动植物种苗有限公司 武威市养殖有限公司 阳谷县杂果有限公司 磐安县咖啡有限公司 莒县坚果有限公司 汶上县动物有限公司