js中验证输入的数值是否是正确的时间格式

匹配的日期格式为 :yyyy-MM-dd hh:mm:ss
如:var time = ‘2016-02-17 13:13:45’;不是则返回false;

function check(time){
    var r = time.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
    if(r==null)
        return false; 
    var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
    return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScriptinput输入数值无效的原因可能有以下几个: 1. 数据类型不匹配:如果您尝试将一个字符串赋值给一个数字变量,或者将一个数字赋值给一个布尔变量,那么JavaScript会抛出一个类型错误。 2. 输入为空:如果输入没有输入任何内容,或者输入的内容为空字符串,那么JavaScript会将其视为无效值。 3. 输入格式正确:如果输入的内容不符合要求,如输入的不是数字或者小数点超过一个等等,那么JavaScript会视其为无效值。 要解决这些问题,可以尝试以下几种方法: 1. 使用parseInt()或parseFloat()函数将字符串转换为数字类型。例如: ``` var input = document.getElementById("myInput"); var num = parseFloat(input.value); ``` 2. 使用正则表达式检查输入格式是否正确。例如: ``` var input = document.getElementById("myInput"); var pattern = /^[0-9]+(\.[0-9]+)?$/; // 匹配正浮点数 if (pattern.test(input.value)) { // 输入格式正确 } else { // 输入格式正确 } ``` 3. 如果需要输入的是日期或时间等特定格式的值,可以使用JavaScript的Date对象进行格式化和验证。例如: ``` var input = document.getElementById("myInput"); var date = new Date(input.value); if (date.toString() === "Invalid Date") { // 输入格式正确 } else { // 输入格式正确 } ``` 希望这些方法可以帮助您解决问题。如果您仍然无法解决问题,请提供更多细节,我将尽力帮助您。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值