时间差给出无效日期
Difference in time is giving Invalid date
我有一个场景,我想在计算前两个文本框中的InTime
和OutTime
后显示员工的总时间。
这是场景,
In first textbox
用户将添加INTIME
In Second textbox
用户将添加OUTTIME
。
输入这两个值后,第三个文本框将显示员工工作的总时间。
这是我尝试过的。
.HTML
<tr>
<td>
<asp:Label ID="lblInTime" runat="server" Text="In Time" Visible="true"></asp:Label>
<asp:TextBox ID="txtInTime" runat="server" Width="89px"></asp:TextBox> (HH:MM)
<asp:RegularExpressionValidator ID="regIntime" runat="server" ControlToValidate="txtInTime"
ErrorMessage="Please enter time in correct format" ValidationExpression="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"></asp:RegularExpressionValidator>
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblOutTime" runat="server" Text="Out Time" Visible="true"></asp:Label>
<asp:TextBox ID="txtOutTime" runat="server" onkeyup="sum();" Width="89">
</asp:TextBox> (HH:MM)
<asp:RegularExpressionValidator ID="regOuttime" runat="server" ControlToValidate="txtOutTime"
ErrorMessage="Please enter time in correct format" ValidationExpression="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"></asp:RegularExpressionValidator>
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblTotalHr" runat="server" Text="Total Hours" Visible="true"></asp:Label>
<asp:TextBox ID="txtTotalHrs" runat="server" Width="70" ReadOnly="true" onkeyUp="TimeCalculation();">
</asp:TextBox>
</td>
</tr>
JAVASCRIPT
function TimeCalculation() {
var start = $('#txtInTime').val();
var end = $('#txtOutTime').val();
var diff = new Date(end - start);
$('#txtTotalHrs').val(diff);
}
但问题是,我在文本框中出现错误,因为
日期无效。
注意 我的日期格式为 HH:MM 和 24 小时格式
请建议我错的地方
要从结尾减去开始,您必须先将它们都转换为日期。
更改您的 JavaScript 函数:
function TimeCalculation()
var start = $('#txtInTime').val();
var startHours = parseInt(start.split(":")[0]);
var startMins = parseInt(start.split(":")[1]);
var end = $('#txtOutTime').val();
var endHours = parseInt(end.split(":")[0]);
var endMins = parseInt(end.split(":")[1]);
var diffHours = endHours - startHours;
var diffMins = endMins - startMins;
diffHours = ("0" + diffHours).slice(-2);
diffMins = ("0" + diffMins).slice(-2);
var diff = diffHours + ":" + diffMins;
$('#txtTotalHrs').val(diff);
}
相关文章:
- 如何修复FF和IE中的Javascript无效日期错误
- 下周末'javascript中的s datetime返回无效日期
- Momentjs :如何防止“无效日期”
- 用户可以在AngularUI日期选择器中键入无效的日期
- 如何在一个代码中检查无效的日期格式和超过18年的有效期
- Moment会在设置日期时自动更正无效日期
- 在jquery日期选择器中禁用特定日期无效
- Javascript第一次的日期无效
- 返回的日期无效
- Javascript Date 中的日期无效
- Firefox 中的日期无效,在 JavaScript 中将字符串转换为日期(mm-dd-yyyy)
- 新日期(isoDate)上的日期无效
- jQuery UI日期选择器getDate今天返回's的日期无效
- firefox中的日期无效
- 夏威夷时区的日期使JavaScript日期无效
- 字符串格式的日期无效
- 无法将字符串转换为日期-无效日期
- 法语的日期无效
- bootstrap日期选择器设置默认日期无效
- 如何在 JS 中使 00/00/0000 日期无效