Javascript中的时间验证

时间:2017-08-18 06:34:11

标签: javascript jquery validation

我正在使用javaScript进行时间和验证,在此验证中,用户输入时间并通过条件验证,日期很容易验证,但时间没有得到验证我的代码是:

HTML

<input type="date" id="date-input" required />
<input type="time" id="stime" required/>
<input type="time" id="etime" required/>
<button id="submit">Submit</button>

Javascript是

$('#submit').on('click', function(){
//date validation ------------------------------------
var date = new Date($('#date-input').val());
  var today = new Date();
  var date1 = date.getDate();
  var date2 = today.getDate();
  if(date1 < date2){
  alert("please fill valid date");
  }
//-------------------time validation-----------------------
var t1 = new Date($('#stime').val());
var t2 = new Date($('#etime').val());
var time1 = t1.getHours();
var time2 = t2.getHours();

if(time1==time2){
alert("Please Make Differrnce between time");
}
 if (time1 < 9 || time2 > 17 ){
alert("Please fill time between 9:00 to 17:00");
}

1 个答案:

答案 0 :(得分:0)

尝试以毫秒为单位获取时间并以毫秒为单位进行比较以验证小时数。

var t_one= $('#stime').val();
var t1 = t_one.split(":");
var t_two = $('#etime').val();
var t2 = t_two.split(":");
var time1 = (+t1[0] * (60000 * 60)) + (+t1[1] * 60000);
var time2 = (+t2[0] * (60000 * 60)) + (+t2[1] * 60000);

你可以看到它在这里工作。

https://jsbin.com/xagisikado/edit?html,js,console,output