У меня есть некоторый код следующим образом:Adobe Flex DateField
private function onComboChange(evt:Event):void {
var temp:Date = df_date.selectedDate;
temp.date += 5;
df_dateDue.selectedDate = new Date(temp);
}
В сущности, я пытаюсь добавить 5 дней на выбранную дату в df_date, и поставить эту дату в df_dateDue. Это срабатывает через EventListener в поле со списком. И df_date, и df_dateDue являются dateFields.
ОК, поэтому в первый раз, когда я запускаю это, он отлично работает; df_date остается неизменным, а df_dateDue устанавливается на 5 дней после df_date. Однако в следующий раз, когда я запустил его, df_dateDue увеличится на 10 дней с df_date, в следующий раз на 15 и т. Д.
Итак, переходя через код, показано, что каким-то образом df_date привязана к temp var и что temp var не сбрасывает себя каждый раз, когда вызывается функция.
Пример: df_date = 01 Jan, df_dateDue = 1 января
Огонь от события, df_date = 01 Jan, df_dateDue = 6 января
Огонь от события снова. На данный момент var temp = 06 Jan (хотя df_date все еще показывает 01 января), а затем df_dateDue устанавливается на 11 января
Снова погасить событие. На данный момент темп вар = 11 января (даже если df_date = 01 января), и df_dateDue затем устанавливается на 16 января
Что я здесь отсутствует?
Спасибо за ответ. Я должен был внести следующие изменения, так как кажется, что ObjectUtil не может скопировать Date object.var temp: Object = ObjectUtil.copy (view.df_date); var d: Date = temp.selectedDate; – JonoB
@jonoB Возможно, вы могли бы бросить его в одну строку. Я уточню свой ответ. – JeffryHouser