1

Extjs 网格模型有,

{
    name: "ORDERDATE",
    type: 'date',
    dateFormat: 'MS'
}

我尝试了具有上述模型的同步存储,

那么发布日期的格式是这样的(Json Type),

ORDERDATE "\/Date(1346212800000)\/"

我猜是因为这种格式,

在 Asp.net(C#) 中无法使用 DateTime 获得该值?多变的。

我尝试使用DateTime 接收该数据?ORDERDATE,但它始终具有 Null 值。

所以,我想尝试将日期发布格式更改为“m/d/y”,但我不知道该怎么做,

有人知道,请给我建议。

谢谢你。

4

2 回答 2

2

我遇到了同样的问题。在我的日期字段上使用convert配置(docs)对我有用。

所以我的模型有这样的:

fields: [
    { name: 'SomeField', type: 'string'} 
    ...
    , { name: 'TimeStamp',
      type: 'date',
      //dateFormat: 'MS',          
      convert: function (value, record) {
        //Convert date type that .NET can bind to DateTime
        var date = new Date(parseInt(value.substr(6)));
        return Ext.Date.format(date, 'l, F d, Y g:i:s A'); //Full Date Time
      }
    }
]

我相信将来我们可以使用serialize配置(docs)在将模型发送到服务器之前转换字段。听起来它只适用于 4.1.2 及更高版本。

在这种情况下,我相信这会起作用:

fields: [
    { name: 'SomeField', type: 'string'} 
    ...
    , { name: 'TimeStamp',
      type: 'date',
      dateFormat: 'MS',          
      serialize: function (value, record) {
        //Convert date type that .NET can bind to DateTime
        var date = new Date(parseInt(value.substr(6)));
        return Ext.Date.format(date, 'l, F d, Y g:i:s A'); //Full Date Time
      }
    }
]
于 2012-10-18T17:20:25.333 回答
1

要更改日期格式,您可以使用文档中的此图表

所以dateFormat: 'm/d/y'应该为你做这个把戏。

虽然我会等着看是否有任何 asp.net 向导弹出来提供帮助,因为它自己的 Asp.net 不支持微软格式对我来说看起来很奇怪。

于 2012-08-16T22:19:15.690 回答