在ASP.NET中输入标记类型time以获得12小时格式的值

本文关键字:12小时 格式 time NET ASP 输入 标记类型 | 更新日期: 2023-09-27 17:50:30

我正在使用一个ASP文本框,TextMode时间:

<asp:TextBox TextMode="Time" ID="time_box" runat="server">

当我在浏览器中运行代码时,我可以输入12小时格式的时间。但是当我点击提交按钮时,数据库中的值以24小时格式存储。

我还尝试做一个JavaScript"警报",看看时间是否在12小时内,但我仍然得到了24小时内的值。

那么,如何在数据库中保存12小时格式的时间呢?

我正在使用:

time_box.Text
time_box.TextWithLiterals //or should I use this?
或者我需要在后端c#代码中将时间转换为12小时吗?

在ASP.NET中输入标记类型time以获得12小时格式的值

在存储日期、时间、double、…时没有format的概念。值。例如,在SQL Server中,date总是存储为一个数字值,这使得算术和比较更加简单和快速。但是,例如,当这个值在SSMS中显示给您时,您不会看到原始数字,而是人类可读的字符串,如17-12-2014。

format通常存在于显示/解析一些需要人类可读的表示值的概念中。

当您从数据库加载值并且它是TimeSpan数据类型时,然后使用以下代码以12小时格式显示该值:

time_box.Text = new DateTime(timeValue.Ticks).ToString("hh:mm tt")

如果加载的值是DateTime类型,则使用以下代码:

time_box.Text = timeValue.ToString("hh:mm tt")