我想用datepicker验证日期输入,该日期输入应该在日期验证

时间:2016-11-24 06:39:29

标签: javascript php jquery regex date

我想验证日期输入框以及应该验证日期的日期选择器,例如

09-30-2016 
09/30/2016

但是我能够在输入bix中处理mm-dd-yyyymm/dd/yyyy但在datepicker中处理不正确。 我的代码:

function isValidDate(input) {
  var regexes = [
    /^(\d{1,2})\/(\d{1,2})\/(\d{4})$/,
    /^(\d{1,2})\-(\d{1,2})\-(\d{4})$/ 
  ];

  for (var i = 0; i < regexes.length; i++) {
    var r = regexes[i];
    if(!r.test(input)) {
      continue;
    }
    var a = input.match(r), d = new Date(a[3],a[1] - 1,a[2]);
    if(d.getFullYear() != a[3] || d.getMonth() + 1 != a[1] || d.getDate() != a[2]) {
      continue;
    }
    // All checks passed:
    console.log(input);
    return true;
  }
 return false;

}

$(document).on('blur','.dateValidation',function(){     
  var isValid = isValidDate($(this).val());
  if(!isValid) {
    $('.date_error').html('Invalid date format!'); 
    return false;
  } 
});
$(document).on('click','.date',function(){ 
  alert("test");
    $(this).datepicker({todayHighlight: true,autoclose: true,autoclose: true}).datepicker("show");

});

0 个答案:

没有答案