今天,鄙人被一个日期控件整了一天,究其原因还是数据库中保存为日期的类型的字段设为了Int(10),导致了越界,结果保存的日期老是1970年1月1日,真是狂汗!!!后来经过细心盘查,终于抓出元凶,吼吼~~
      具体方法:
                  1.日期控件的设置:
                  <mx:DateField id="ProductMake_txt" yearNavigationEnabled="true"
                       formatString="YYYY/MM/DD" dayNames="[日,一,二,三,四,五,六]"
                       monthNames="[一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月]"/>
                  2.把DateField中选中的时间转换为毫秒数,复制给Model中SCRQ属性,最后保存到数据库中:
                        u.SCRQ = ProductMake_txt.selectedDate.getTime();
                  3.将数据库中保存的毫秒数取出,在转化为用户可以接受的形式让DataGrid显示出来:
                    private function secondChangeDate(s:Number):String
                     {
                            var date:Date = new Date();
                            date.setTime(s);
                            var str:String = date.getFullYear() + "/" + (date.getMonth()+1)
                             + "/" + date.getDate();
                            return str;
                     }      
                    4.考虑到数据库中是double类型,而显示似乎要是String才比较方便,所以给Model增
                    加一个字段SCRQstr,专门用来给DataGrid显示用.      
                        u.SCRQstr = secondChangeDate(datas[i].SCRQ);
                  最后,被这个弱智问题烦了一天,有点 XXX,不过没有白忙活,最起码又多写了篇文章,希望对遇到类似问题的
                  大家有所帮助!鞠躬~
posted on 2009-09-21 17:02  七维  阅读(872)  评论(0编辑  收藏  举报