SCinitiationtarget.selectedDate = new Дата (rows1 [я] [ 'InitiationTarget']);
Я устанавливаю свою выбранную дату в моем DateChooser следующим образом. Формат, который я получаю из базы данных - 2009-12-30.
Отображается правильно.
Я считаю, что объект даты не распознает дефис как допустимый разделитель. Вам придется как-то переформатировать ваши объекты даты.
Например, это работает:
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
Почему бы не использовать метод parse класса Date?
Date
SCinitiationtarget.selectedDate = Date.parse(rows1[i]['InitiationTarget']);
Я наконец-то получил решение.
var dateStr:String = dateFormatter.format(rows1[i]['InitiationTarget']); SCinitiationtarget.selectedDate = new Date(dateStr); <mx:DateFormatter id="dateFormatter" formatString="MMM D, YYYY"/>
С этим проблема решается.
Первый аргумент конструктора Date называется yearOrTimeValue и, как указано в его документации, он принимает год или время в миллисекундах UTC. Для правильного Date строительства используйте:
yearOrTimeValue
new Date(2009, 12, 30)