用datetime.now.tostring()给textbox赋值后,textbox的日期显示格式如下:2008-12-28 21:35:31.该textbox允许修改值,求助如何在服务器端验证用户输入或者修改的值仍然为"年月日时分秒"格式?

解决方案 »

  1.   

    1.可以用验证控件CompareValidator
    设置CompareValidator的Operator的属性为"DataTypeCheck";Type属性为"Date"2.也可以用js验证
      

  2.   

    //检查日期格式  
      function   checkbirthday(birthday)  
      {  
      var   DatePat   =   /^\d{4}\-\d{1,2}\-\d{1,2}$/  
      var   DatePat1   =   /^\d{4}\.\d{1,2}\.\d{1,2}$/  
      flag   =   DatePat.test(birthday)  
                      flag1=DatePat1.test(birthday)  
      if(flag||flag1)    
      {    
      return   true  
      }    
      else    
      {    
      return   false  
      }            
      }  
      在javascript里验证,自己改改。
      

  3.   

    /**  
        判断输入框中输入的日期格式是否为年月日时分秒 即 yyyy-mm-dd hh:mi:ss
      */  function isDate(dateString){
      if(dateString.trim()=="")return true;
      //年月日时分秒正则表达式
      var r=dateString.match(/^(\d{1,4})\-(\d{1,2})\-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
            if(r==null){
       alert("请输入格式正确的日期\n\r日期格式:yyyy-mm-dd\n\r例    如:2008-08-08\n\r");
       return false;
      }
      var d=new Date(r[1],r[2]-1,r[3],r[4],r[5],r[6]);    
      var num = (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[2]&&d.getDate()==r[3]&&d.getHours()==r[4]&&d.getMinutes()==r[5]&&d.getSeconds()==r[6]);
      if(num==0){
       alert("请输入格式正确的日期\n\r日期格式:yyyy-mm-dd\n\r例    如:2008-08-08\n\r");
      }
      return (num!=0);
      
    } </script>
      

  4.   

    1.可以用验证控件CompareValidator 
    设置CompareValidator的Operator的属性为"DataTypeCheck";Type属性为"Date" 2.也可以用js验证 
    =======================
    正解
      

  5.   

    如果更考虑到安全可以验证控件跟后台DateTime结合