jquery - Show alert if time selected is within 2 hours of server date/time -
basically have 2 text boxes can select 'hour' 00-23 , 'minute' in multiples of 5.
what trying achieve validation can't make booking within 2 hours of current date/time. if time 14:00 , try make booking 15:30, show alert message. if it's after 2 hours e.g. 16:00 it's okay.
i don't idea how can achieve jquery since time value 2 hours greater 23:00 01:00.
any on appreciated.
here html code:-
<div class="div-jtime-content div-content left div-subrow-style ui-corner-all"> <label for="txt-outbound-date" class="left p-input-label" >date: </label> <input type="text" id="txt-outbound-date" name="txt-outbound-date" class="input-txt-sml left required" /> <label class="left p-input-label">time: </label> <select name="sel-outbound-hour" id="sel-outbound-hour" class="required input-select"> <option value="" selected="selected"></option> <option value="00">00</option> <option value="01">01</option> <option value="02">02</option> <option value="03">03</option> <option value="04">04</option> <option value="05">05</option> <option value="06">06</option> <option value="07">07</option> <option value="08">08</option> <option value="09">09</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> </select> <select name="sel-outbound-min" id="sel-outbound-min" class="required input-select"> <option value="" selected="selected"></option> <option value="00">00</option> <option value="05">05</option> <option value="10">10</option> <option value="15">15</option> <option value="20">20</option> <option value="25">25</option> <option value="30">30</option> <option value="35">35</option> <option value="40">40</option> <option value="45">45</option> <option value="50">50</option> <option value="55">55</option> </select> </div>
what going can done using date object comparison. if 2 hours exactly, following prove worthwhile:
function findts() { var ts = new date(); ts.sethours($("#sel-outbound-hour").val()); ts.setminutes($("#sel-outbound-min").val()); return ts; } function isintwohourdelay(ts) { var current = new date(); if ((current.gettime() - ts.gettime()) > 7200000) return false; return true; } the first function converts time date object. please note need add sanitization in - merely contains important bits.
the second function compares current time given ts, gettime returns milliseconds since unix epoch given ts. so, 2 hours 7200 seconds, 7200000 millisecs.
Comments
Post a Comment