如何从输入时间获取值

时间:2018-10-20 05:45:48

标签: javascript

function update() {
  var object_one = $('#start_time');
  var object_two = $('#total');
  var object_three = $('#end-time');
  var my_input = object_one.val();
  var my_put = object_three.val();
  var my_output = my_put - my_input;
  object_two.val(my_output);
}


<th colspan="2"> Monday</th>
   <td> <input id="start_time" type="time"></td>
   <td> <input id= "end-time" type= "time"></td>
   <td> <input id="start_time" type="time"></td>
   <td> <input id= "end-time" type= "time"></td>
   <td> in</td>
   <td>out </td>
   <td> in</td>
   <td>out </td>

我已经定义了开始时间和结束时间的值...我只是不知道如何减去获得我的输出的时间。我不知道我是否正确设置了值,这就是为什么我将NaN作为输出。这是一个TIMESHEET任务,因此我们必须在每行等中添加时间。我对此真的很陌生,帮助。

1 个答案:

答案 0 :(得分:0)

如果您查看时间输入的值,则它们是字符串。您可以了解有关此type of time input here的更多信息。需要注意的是,该值将始终是HH:MM(24小时制)格式的字符串。这意味着可以轻松地将其解析为小时/分钟。

我已经为您实现了一个功能。您可以在这里找到它。

function ParseTime(timeString) {
  var timeMatcher = /(\d\d):(\d\d)/;
  var result  = timeMatcher.exec(timeString);

  // The first result (result 0) is the full string,
  // the second is the number of hours, the third is the number of minutes.
  var hours = Number(result[1]);
  var minutes = Number(result[2]);

  // returns the time in number of minutes.
  return (hours * 60) + minutes;
}