SelectedDate未正确设置Flex中的负载

时间:2010-03-31 13:05:25

标签: flex

  

SCinitiationtarget.selectedDate = new   日期(rows1 [I] [ 'InitiationTarget']);

我正在我的DateChooser中设置我的seletedDate。我从数据库获得的格式是2009-12-30。

正确显示。

4 个答案:

答案 0 :(得分:4)

我认为日期对象无法将短划线识别为有效的分隔符。您将需要重新格式化日期对象。

例如,这有效:

var date:Date = new Date("2009/12/30");
myDateChooser.selectedDate = date;

但这不是:

var date:Date = new Date("2009-12-30");
myDateChooser.selectedDate = date;

有关哪些日期格式有效的详细信息,请参阅此处的文档:http://livedocs.adobe.com/flex/3/langref/Date.html#Date%28%29

答案 1 :(得分:0)

Date构造函数的第一个参数称为yearOrTimeValue,并且其文档说它接受以UTC毫秒为单位的年份或时间。对于正确的Date施工用途:

new Date(2009, 12, 30)

答案 2 :(得分:0)

我终于得到了解决方案。

var dateStr:String = dateFormatter.format(rows1[i]['InitiationTarget']);
SCinitiationtarget.selectedDate = new Date(dateStr);

<mx:DateFormatter id="dateFormatter" formatString="MMM D, YYYY"/>

有了这个,问题就解决了。

答案 3 :(得分:0)

为什么不使用Date类的parse方法?

SCinitiationtarget.selectedDate = Date.parse(rows1[i]['InitiationTarget']);
相关问题