1

我正在使用日历控件在经典 ASP 应用程序中输入日期。但是日历控件对键盘不友好,需要更多时间来输入数据。所以后来我添加了一个带有日期验证的简单文本框。它工作正常。但是,用户还需要放置日期分隔符。我希望放置一个带有预配置日期格式和分隔符的日期输入字段,以便用户只需键入数字,该字段也会导致验证。

我怎样才能做到这一点?

4

4 回答 4

4

只需使用 jQuery/javascript 来屏蔽日期文本字段。当用户输入值时,它将自动格式化日期。还强制正确验证,因为它工作。

例如 jQuery 插件搜索:

jquery 日期掩码:http ://digitalbush.com/projects/masked-input-plugin/

于 2011-03-30T18:01:05.560 回答
2

您始终可以将三个带有分隔符的文本框作为文本(就像我在旧的 ASP 经典站点中所做的那样)

在此处输入图像描述

您需要在回复中分隔日期,然后DateSerial在发布时使用。

于 2011-03-30T12:29:43.887 回答
1

当我们在过去创建类似的东西时,我们允许用户以几种不同的方式在文本框中输入日期:

  • DDMMYYYY
  • 日/月/年年年
  • 0(今天)

提交表单时,我们有一个简单的 ASP 函数将 DDMMYYYY 转换为 DD/MM/YYYY(日期字符串必须是 8 个字符,因为假设 DD 是 2 位,插入分隔符,MM 是 2 等)并检查这是一个有效的日期,也是一个if formdate = 0 then formdate=now()规则。

不过,您还需要在表单上添加一些 JavaScript 验证。在文本框上添加一个 onblur 事件来检查相同的事情 - 输入 8 位数字,或有效日期,或 0 - 否则会提醒用户。(如果我们今天重做,我会在 jQuery 中执行此操作)

如果您愿意,您可以使用 Javascript“验证”来加快数据输入,例如,如果输入的很多日期是昨天或明天允许 -1 或 +1,或者数据输入始终适用于当前月份但不同的一天,允许用户只输入一个数字 - 15,Javascript/jQuery 将字符串转换为 2011 年 3 月 15 日。

于 2011-03-30T09:23:27.437 回答
0

使用 HTML 5...textMode="日期"

<asp:TextBox ID="TextBoxDate" 
       runat="server"
       CssClass="form-control" Width="561px"
       TextMode="Date"> 
</asp:TextBox>
于 2018-01-05T14:38:37.797 回答