开发者

SelectedDate not setting properly on the load in Flex

开发者 https://www.devze.com 2022-12-25 01:09 出处:网络
SCinitiationtarget.selectedDate = new D开发者_开发问答ate(rows1[i][\'InitiationTarget\']); I am setting my seletedDate in my DateChooser like this. The format i am getting from the Database is 2009

SCinitiationtarget.selectedDate = new D开发者_开发问答ate(rows1[i]['InitiationTarget']);

I am setting my seletedDate in my DateChooser like this. The format i am getting from the Database is 2009-12-30.

Its displaying in correctly.


I believe the date object doesn't recognize the dash as a valid separator. You'll have to some how reformat your date objects.

For example this works:

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

But this doesn't:

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

For more information on what date formats are valid, see the documentation here: http://livedocs.adobe.com/flex/3/langref/Date.html#Date%28%29


The first argument of Date constructor is called yearOrTimeValue and as its documentation says it accepts either year or time in UTC milliseconds. For proper Date construction use:

new Date(2009, 12, 30)


I got the solution finally.

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

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

With this the problem gets solved.


Why not use the parse method of the Date class?

SCinitiationtarget.selectedDate = Date.parse(rows1[i]['InitiationTarget']);
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号