You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ASP.NET中实现日期选择器?HTML表单后端代码疑问

解决方案

1. 将HTML日期输入框转为服务器控件

要让后端能获取到HTML input type="date" 的值,首先需要给它添加 runat="server" 属性,把它变成ASP.NET服务器控件:

<!-- invoice date -->
<div class="form-group left">
    <label for="invoicedate" class="label-title"> Invoice Date : </label>
    <input type="date" id="invoicedate" class="form-input" required="required" runat="server" />
</div>

2. 后端获取并处理日期值

添加 runat="server" 后,你就可以在后端代码里直接通过控件ID访问它的 Value 属性(对应TextBox的Text属性),然后将其传入SQL参数:

直接传入字符串(适用于数据库字段为字符串类型)

cmd.Parameters.AddWithValue("invoicedate", invoicedate.Value);

转为DateTime类型(更推荐,适用于数据库字段为日期类型)

为了避免格式错误,建议使用TryParse做安全转换:

if (DateTime.TryParse(invoicedate.Value, out DateTime invoiceDate))
{
    cmd.Parameters.AddWithValue("invoicedate", invoiceDate);
}
else
{
    // 处理无效日期的情况,比如给用户返回错误提示
}

关键说明

  • HTML input type="date" 会自动在现代浏览器中生成原生日期选择器,无需额外插件,符合你要简单方案的需求。
  • 控件提交的日期格式是标准ISO格式(yyyy-MM-dd),ASP.NET能直接识别并转换为DateTime类型。

内容的提问来源于stack exchange,提问作者kimk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 23:45:23