日期:2014-05-18  浏览次数:20778 次

jsp页面怎么判断输入的文本符合数据库中datetime类型的显示格式
jsp页面怎么判断输入的文本符合数据库中datetime类型的显示格式?

比如说,在页面上定义了一个文本域time,用来输入时间,插入到sql数据库的一个表中,time在数据库中对应的是属性starttime类型是datetime;

如果输入的time的值不是时间格式的,如time上输入的是“11”,这样整个记录就不能插入数据库的表中,
所以我想判断输入的time的值是不是“yyyy-mm-rr”这种格式,
请问该怎么做啊


------解决方案--------------------
用正则表达式
\d{4}-\d{2}-\d{2}

取道年月日后 还要判断一下数值是否越界
------解决方案--------------------
calendar.isTimeSet()
最好去看看calendar类

------解决方案--------------------
用正则表达式啊,在你的文本框的onblur事件中写
^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$

=================================================
然后在提交前也可以追加check
比方说
try{new Date(value)}catch{return false;}或者自己用字符串分析判断就行了.



------解决方案--------------------
首先每个不同的数据库表示得方法是不一样得
你要解决这种麻烦要么就在存数据之前用simpledateformat一下,要么就在数据库里面toChar之类得农一下。