简体   繁体   English

Jquery 两个字段的小时时差(AM/PM 格式)

[英]Jquery time difference in hours from two fields ( AM/PM Format)

I am having two fields in my form where users select input time (start_time, end_time) I would like to calculate time duration between these two time field.我的表单中有两个字段,用户 select 输入时间(start_time,end_time)我想计算这两个时间字段之间的持续时间。

eg: start_time = 6:00 AM, end_time= 3:00 PM, duration = 7例如:开始时间 = 上午 6:00,结束时间 = 下午 3:00,持续时间 = 7

start_time and end_time, both are in AM/PM Format. start_time 和 end_time,都是 AM/PM 格式。

You can use this function.您可以使用此 function。 Working with your time format.使用您的时间格式。

 $('.btn_duration').on("click", function(){ duration(); }) function duration() { var _starttime = $('#start_time').val(); var _endtime = $('#end_time').val(); //divide AM/PM from time var _split_starttime = _starttime.split(" "); var _split_endtime = _endtime.split(" "); //check if start time is bigger than end time if (_split_starttime[1] == "PM") { alert("start time can't be bigger than end time."); return false; } else { var _start_timenumber = _split_starttime[0].split("."); var _end_timenumber = _split_endtime[0].split("."); //start time hour & minute var _start_hour = parseInt(_start_timenumber[0]); var _start_min = parseInt(_start_timenumber[1]); //end time hour & minute var _end_hour = parseInt(_end_timenumber[0]); var _end_min = parseInt(_end_timenumber[1]); //get hour duration var _hour_format = 0; if (_split_endtime[1] == "PM") { if(_end_hour == 12){ _end_hour = 0; } _hour_format = _end_hour + 12; } else{ _hour_format = _end_hour; } var _duration_hour = _hour_format - _start_hour; //calculate minutes var _remained_min = Math.abs(_start_min - _end_min);; //final result var _final_duration = _duration_hour + "Hour " + _remained_min + "Minutes"; $('#result').val(_final_duration); } }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="text" id="start_time" value="6.10 AM"> <input type="text" id="end_time" value="2.45 PM"> <input type="text" id="result" value=""> <button class="btn_duration">Calculate</button>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM