Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Javascript dd/mm/yyyy date check?

I've got a html form field where people can enter dates coded as such:

input type="text" name="dateofbirth" placeholder="dd/mm/yyyy"

I'm trying to find a JavaScript to check that the date is entered in the dd/mm/yyyy format (so 10 characters, 2/2/4)

Any comments would be appreciated. Only first time doing javascript and have been doing well until this hiccup.

Edit: code (form name is 'signup)

// JavaScript Document
function validateForm(signup) {
  {
    var x = document.forms["signup"]["dateofbirth"].value;
    var reg = /(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d/;
    if (x.match(reg)) {
      return true;
    }
    else {
      alert("Please enter dd/mm/yyyy");
      return false;
    }           
  }
}
like image 204
silentauror Avatar asked Apr 17 '12 15:04

silentauror


2 Answers

You can validate date with your provided format via javascript using regular expression. sample code shown below.

function(input){
  var reg = /(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d/;
  if (input.match(reg)) {
    alert("Input matched");
  else {
    alert("Please enter dd/mm/yyyy");
  }
}
like image 83
irfanmcsd Avatar answered Oct 06 '22 11:10

irfanmcsd


Have you looked at the Moment.js javascript library?

http://momentjs.com/

I haven't used it, but I plan to migrate my Javascript code to it.

like image 35
nickk_can Avatar answered Oct 06 '22 09:10

nickk_can