jsp页面怎么判断输入的文本符合数据库中datetime类型的显示格式?比如说,在页面上定义了一个文本域time,用来输入时间,插入到sql数据库的一个表中,time在数据库中对应的是属性starttime类型是datetime;如果输入的time的值不是时间格式的,如time上输入的是“11”,这样整个记录就不能插入数据库的表中,
所以我想判断输入的time的值是不是“yyyy-mm-rr”这种格式,
请问该怎么做啊

解决方案 »

  1.   

    用正则表达式
    \d{4}-\d{2}-\d{2}取道年月日后 还要判断一下数值是否越界
      

  2.   

    calendar.isTimeSet()
    最好去看看calendar类
      

  3.   

    用正则表达式啊,在你的文本框的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;}或者自己用字符串分析判断就行了.
      

  4.   

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

  5.   

    我使用Calendar这些,每次都报错cannot find symbol
    还需要加什么?