我有一个字段,用户只能在文本字段中输入日期或时间。现在我知道如果我制作2个字段,一个用于日期,一个用于时间,我可以检查时间字段是否为空。
我想做的只有一个领域。如果用户输入结束日期只需要时间,如果用户输入日期和时间,则两者都需要。
我遇到的问题是:如果用户输入“8.12.2013”,它实际上意味着“8.12.2013 0:0:0”,我将其转换为Cdate。但是结束时间是8.12.2013日期的第一秒,这意味着8.12.2013意味着在该日期停止(这是一个停止时间字段)。但事实上,如果用户写入8.1.2013,则意味着滚动到当天结束。
当然我可以做date()>“8.12.2013”并且它会起作用,但是如果用户输入日期和时间它将无法正常工作,因为它会删除时间部分。
我的问题:ASP中是否有任何函数可以检查日期的时间部分是否设置在变量中?我尝试使用TIME但是它显示0表示小时,0表示分钟,0表示秒,即使使用了Cdate(“8.12.2013”)。我需要函数告诉我时间没有设置所以我可以使用date()而不是now()进行比较。
我希望这是有道理的。
答案 0 :(得分:0)
你可以尝试一些简单的事情:
If CLng(myDate) = myDate Then ...
日期被视为超过特定日期等的时间,因此整合日期将消除时间。
- 编辑 -
只需添加上述代码:CLng
会将日期和时间转换为日期。通过将此与整个日期进行比较,您可以看到是否包含任何小数部分。
请注意,在严格类型的环境(例如.NET)中,这将被视为不良做法,但经典ASP类型是变体并且具有很强的可塑性。