0

这是我的日期字段:

<mx:DateField id="date" 
    formatString="DD-MM-YYYY" selectableRange="{DTselectableRange}" 
    change="handleChange()" editable="true"  clear="dateCleared(event)"/>

我想检测明确的事件,adobe ref 说:

当用户从文本上下文菜单中选择“清除”(或“删除”)时,将调度清除事件。

但是从未调用过 dateCleared 函数...我需要它,因为当用户删除它时我必须将 selectedDate 设置为 null...

请帮我...

4

1 回答 1

1

clear我可以确认从文本内容菜单中选择“删除”时mx.controls.DateField 不会调度事件。我也没有运气clear为可编辑mx.controls.TextInputspark.components.TextInput. 唔....

您可以做的是处理handleChange事件侦听器中控件值的更改并在selectedDate那里设置您的值。

像这样的东西:

private var selectedDate:Date;

private function handleChange(date:Date):void {
    if (date == null) {
        selectedDate = null;
    }       
    // your existing handleChange code here
}

另外,我会改变这个:

<mx:DateField change="handleChange()" />

对此

<mx:DateField change="handleChange(DateField(event.target).selectedDate)" />
于 2011-06-18T01:30:15.190 回答