JSFiddle - React, Tailwind, and code Playground

by godhong

HTML

<table><tr class = "app_dates"><th><label for = "id_Date_apt"> Application Date 1: </label></th> <td> <input id = "id_Date_apt" type = "text" value = "11/11" name = "Date_apt" readonly = "readonly"/></td></tr>

<tr class = "app_dates"><th><label for = "id_Date_apt"> Application Date 2: </label></th> <td> <input id = "id_Date_apt2" type = "text" value = "12/12" name = "Date_apt2" readonly = "readonly"/></td></tr></table>

JavaScript

var a = 100
var b = 1
var d = new Date(1960, 01 + 1, 1)
var e = new Date(2012, 2, 1 + b)

var date1_m = $('input[id^="id_Date_"]:eq(' + b + ')').val().slice(0, 2)

alert(date1_m)
var index_1 = noa_valid - 2
var index_2 = noa_valid - 1
var dA1 = $('input[id^="id_DayRe"]:eq(' + index_1 + ')') //$('input[id^="id_Date_"]:eq(0)')
var dA2 = $('input[id^="id_DayRe"]:eq(' + index_2 + ')')
var date1_m = $('input[id^="id_Date_apt"]:eq(' + index_1 + ')').val().slice(0, 2)
var date1_d = $('input[id^="id_Date_apt"]:eq(' + index_1 + ')').val().slice(3, 5)
var date2_m = $('input[id^="id_Date_apt"]:eq(' + index_2 + ')').val().slice(0, 2)
var date2_d = $('input[id^="id_Date_apt"]:eq(' + index_2 + ')').val().slice(3, 5)
var date1_full = new Date(1960, date1_m - 1, date1_d + dA1)
var date2_full = new Date(1960, date2_m - 1, date2_d + dA2)


function isDate(txtDate) {
    var currVal = txtDate;
    if (currVal == '') return false;

    //Declare Regex  
    var rxDatePattern = /^(\d{1,2})(\/|-)(\d{1,2})$/;
    var dtArray = currVal.match(rxDatePattern); // is format OK?
    if (dtArray == null) return false;

    //Checks for dd/mm format.
    var dtDay = dtArray[3];
    var dtMonth = dtArray[1];
    var dA1 = $('#id_DayRe').val()
    var dA2 = $('#id_DayRe2').val()
    var date1_m = $('#id_Date_apt').val().slice(0, 2)
    var date1_d = $('#id_Date_apt').val().slice(3, 5)
    var date2_m = $('#id_Date_apt2').val().slice(0, 2)
    var date2_d = $('#id_Date_apt2').val().slice(3, 5)

    var date1_full = new Date(1960, date1_m - 1, date1_d + dA1)
    var date2_full = new Date(1960, date2_m - 1, date2_d + dA2)

    if (dtMonth.length != 2 || dtMonth < 1 || dtMonth > 12) return false;
    else if (dtDay.length != 2 || dtDay < 1 || dtDay > 31) return false;
    else if (date1_full >= date2_full) return false;

    return true;
}