我在flex中有一个日期字段,其中editable =“true”。 当我输入:20-1-69然后我去另一个领域时,它会变成20-01-2069。但是我不希望它改成2069年。是否有可能关掉这个自动改变的东西?
谢谢, JSMB
答案 0 :(得分:2)
过去,当字节价格昂贵时,智能程序员使用两位数来存储日期。所以60被解释为1960年,一切都很好。
在可怕的2000年即将来临之前,人们开始恐慌,因为计算机肯定会停止工作,我们都会死,或者至少从互联网上被切断,这可能更糟。
因此,智能程序员被要求解决问题。
真正的智能程序员将数字位数扩展为4.但是自称为智能的程序员使用滑动窗口。 70到99被解释为1970-1999和0到69被解释为2000年到2069年。这当然解决了Y2K问题。但正如你所知,我们有一个2070问题。
有趣的是,使用这个方案,像我这样的老家伙将来会出生。这让我们再次感到年轻。所以他们可能是故意这样做的。
答案 1 :(得分:0)
您需要决定两位数日期在1900到2000之间切断的位置,然后对输入执行一些魔术。
示例:截止日期为1940年
(伪代码)
If twoDigitYear > 40
fourDigitYear = "19" + twoDigitYear
Else
fourDigitYear = "20" + twoDigitYear
这将为您提供1941年至2040年的年份。
答案 2 :(得分:0)
使用DateValidator强制执行4位数年份?如果您要进入旧日期,无论您使用哪种SDK,这都是一项要求。即使你通过某种方式来完成这项工作,一些用户也会出现并感到困惑。