0

我的页面有 2 个文本字段(开始时间和结束时间)我正在使用 HTML5 时间元素,现在我想验证开始时间总是小于结束时间,我目前正在使用下面的脚本来验证

function checkTimings(source, argument) {
                    var sTime = new Date("01/01/0001 " + $("[id$=txtStartTimings]").val());
                    var eTime = new Date("01/01/0001 " + $("[id$=txtEndTimings]").val());
                    argument.IsValid = sTime < eTime;
                }

当两个时间都是 AM 或 PM 但有一种情况是开始时间是 PM,结束时间是 AM,比如 11.45 PM 到 12.15 AM,这里验证失败。

谁能建议我们如何处理这种情况?

4

2 回答 2

0

在进行计算之前是否可以将它们转换为 24 小时格式?

function checkTimings(source, argument) {
                var sTime = new Date("01/01/0001 " + $("[id$=txtStartTimings]").GetHours());
                var eTime = new Date("01/01/0001 " + $("[id$=txtEndTimings]").GetHours());
                argument.IsValid = sTime < eTime;
            }
于 2017-05-23T05:24:20.407 回答
0

您可以直接在数据构造函数中传递日期以获取实际日期。

function checkTimings(source, argument) {
                    var sTime = new Date($("[id$=txtStartTimings]").val());
                    var eTime = new Date($("[id$=txtEndTimings]").val());
                    argument.IsValid = sTime < eTime;
            }

如果问题仍然存在,那么只需在文本字段中更改日期格式,或者您也可以在 js 函数中解析日期。

于 2017-05-23T05:28:31.543 回答