我在Flex中使用MX DateField控件,并希望将日期显示为2011年7月1日或2011年7月1日。有谁知道如何执行此操作?我尝试将formatString设置为“DD MMM YYYY”,但它不起作用。
答案 0 :(得分:4)
这有效:
<fx:Declarations>
<mx:DateFormatter id="myDf" formatString="DD MMM YYYY"/>
</fx:Declarations>
<fx:Script>
<![CDATA[
private function formatDate(date:Date):String{
return myDf.format(date);
}
]]>
</fx:Script>
<mx:DateField id="dateField" labelFunction="formatDate" />
在http://livedocs.adobe.com/flex/3/html/help.html?content=controls_12.html
的LiveDocs中找到它但是,这并不能解释为什么组件上的formatString属性无法正常工作。 我可以确认它没有按预期工作。
干杯
答案 1 :(得分:0)
我会用这样的东西:
<mx DateField id = "dateField"
dayNames ="["S", "M", "T", "W", "T", "F", "S"]"
monthNames="["January", "February", "March", "April", "May",
"June", "July", "August", "September", "October",
"November", "December"]" />
由于您提到了3个字符的月份名称,这是一个很好的例子。如果您不需要日期名称,当然要删除该行。
<mx DateField id = "dateField"
dayNames ="["S", "M", "T", "W", "T", "F", "S"]"
monthNames="["Jan", "Feb", "Mar", "Apr", "May",
"Jun", "Jul", "Aug", "Sep", "Oct",
"Nov", "Dec"]"
formatString = "DD MMM YYY" />
希望这有帮助。