有没有一种简单的方法可以将时间(hh:mm)表示为十进制值?例如,01:08应该变为1,13。
我有一个asp:textbox用掩码格式“99:99”屏蔽为时间。在这个框旁边,我需要将输入的值显示为十进制。
<asp:TextBox ID="time" runat="server" /> hh:mm ([time in decimal format])
<ajaxToolkit:MaskedEditExtender runat="server" Mask="99:99" TargetControlID="time" MaskType="Time" />
4条答案
按热度按时间gj3fmq9x1#
您可以使用TimeSpan的TotalHours属性,如下所示:
6tdlim6h2#
首先,您可能会发现使用 TimeSpan 比使用 DateTime 更合适。因此,对于您的示例,如下所示:
产生正确的结果。
60
后面的m
强制计算为十进制。你不能把这个C#直接挂接到文本框的onblur上,因为它运行在服务器端,如果你需要它来运行客户端,你必须使用 AJAX 回调函数来计算它,或者使用javascript来剪切字符串,然后分别计算每一位(分和秒),然后把结果输出到第二个文本框或标签。
fcg9iug33#
编辑:更好的方法,使用GenEric的
TimeSpan
思想:bq9c1y664#