//函数名:CheckDateTime
//功能介绍:检查是否为日期时间
function CheckDateTime(str){
var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
var r = str.match(reg);
if(r==null)return false;
r[2]=r[2]-1;
var d= new Date(r[1], r[2],r[3], r[4],r[5], r[6]);
if(d.getFullYear()!=r[1])return false;
if(d.getMonth()!=r[2])return false;
if(d.getDate()!=r[3])return false;
if(d.getHours()!=r[4])return false;
if(d.getMinutes()!=r[5])return false;
if(d.getSeconds()!=r[6])return false;
return true;
}
注:代码原作者:阿信
//功能介绍:检查是否为日期时间
function CheckDateTime(str){
var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
var r = str.match(reg);
if(r==null)return false;
r[2]=r[2]-1;
var d= new Date(r[1], r[2],r[3], r[4],r[5], r[6]);
if(d.getFullYear()!=r[1])return false;
if(d.getMonth()!=r[2])return false;
if(d.getDate()!=r[3])return false;
if(d.getHours()!=r[4])return false;
if(d.getMinutes()!=r[5])return false;
if(d.getSeconds()!=r[6])return false;
return true;
}
注:代码原作者:阿信
解决方案 »
- js一个简单的问题
- 一小段html代码,很简单,运行不正确,能不能帮看看
- 请问我这个广告向下移的代码?
- js obj.document.getElementsByTagName("li");
- 有人知道怎么用js操作windows服务吗?
- 我用window.open打开一个框架,请问怎样将框架中的一个页面中的值传到他的前一个页面中
- 各位大虾,请看一下这一段代码,有什么错误?谢谢!!!
- 怎样把网页上的表格内容导入到excel中,表格title有两层甚至三层,有例子请参考
- 怎样可以在鼠标事件发生时获得鼠标相对应屏幕的坐标?
- 源码与js问题(求大佬)
- javascript里面怎样比较这样的时间???
- 简单问题!
function isDate(sDate)
{
var reDate=/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/;
if(!reDate.test(sDate)) return false;
var y=parseInt(RegExp.$1), m=parseInt(RegExp.$2), d=parseInt(RegExp.$3);
if(m>12 || d>31) return false;
var sMonth="4|6||9|11";
if(sMonth.indexOf(String(m))!=-1 && d==31) return false;
if((y%4!=0 || (y%4==0 && y%400!=0)) && m==2 && d>28) return false;
return true;
}
alert(isDate("1983-02-29"));
alert(isDate("1982-09-22"));
</script>
时间输入验证。blur一下,可以看到效果<br/>
时间1<input onblur="checkTimeInput(this);" value="2002.3.6 12:30"><br/>
时间2<input onblur="checkTimeInput(this);" value="2.3.6"><br/>
时间3<input onblur="checkTimeInput(this);" value="2002/2/31"><br/>
时间4<input onblur="checkTimeInput(this);" value="fdsaf"><br/>
<script>
function checkTimeInput(obj) //此函改由原来验证日期的函数改写而成,有擅作主张之嫌,请慎用
{
if (obj.value.length==0) return false;
var objValue=obj.value.replace(/[-\.]/g,"/");
var a=new Date(objValue);
if (isNaN(a))
{
obj.value="";
alert("!!!!请注意:\n您刚才输入的日期不正确,我们已进处了清除。");
obj.focus();
return false;
}
var b;
if (a.getFullYear()<1900||a.getFullYear()>2200)
{var Today=new Date();
b=Today.getFullYear()+"-"+(a.getMonth()+1)+"-"+a.getDate();
}
else if (a.getFullYear()<1930)
b=(a.getFullYear()+100)+"-"+(a.getMonth()+1)+"-"+a.getDate();
else b=a.getFullYear()+"-"+(a.getMonth()+1)+"-"+a.getDate()+" "+a.getHours()+":"+a.getMinutes()+":"+a.getSeconds();
obj.value=obj.value.replace(/[-\.\/]0*/g,"-");
if ((new Date(b.replace(/[-\.]/g,"/")))-(new Date(obj.value.replace(/[-\.]/g,"/")))!=0)
{
obj.value=b;
alert("!!!!请注意:\n您刚才输入的日期不正确,我们已进行了修改。");
obj.select();
obj.focus();
return false;
}
obj.value=b;
return true;
}</script>
日期验证及自动纠错。
http://jkisjk.vip.sina.com/code/html/forCheckDateInput.htm更多(如日历等)请到
http://jkisjk.vip.sina.com/code/html/
To JK_10000(JK1)是否可以有个焦点,让对方知道哪个日期输入有问题?
---------------------------------------------------------
详情参见:
http://jkisjk.vip.sina.com/code/html/inputcheck.htm里面做了一个说明:“预设值(包括所有的非手工输入的值)必须正确”
由于要演示效果,所以JK预设了几个不合规范的输入值,实际上的操作里不会有这样的情形发生,即不会同时出现好几个输入框里同时有不合规范的输入值。
:)
------------------------------------
JK本人以为把各种形势都改成yyyy-mm-dd要恰当一点,因为yyyy-mm-dd大约也可以算个标准。再说从数据库里取出来的时候,大家也一般写成这个样子。
我不大清楚您想要的是什么样的效果,可能是看您的话没有看明白。
:)