如何在Javascript中验证日期期间与其他日期期间的交叉
How to Validate Date Period Cross over with Other Date periods in Javascript?
我有一个列表,其中存储了有关客户住院的信息。一个客户可能有多个住院详细信息,每个详细信息都有一个时间段(住院开始日期和出院日期)。
如果我添加带有时间段的新住院信息,我需要验证新添加的日期是否与任何客户的现有时间段交叉。是否有任何现有的JavaScript验证可以做到这一点?
没有内置的验证,但您可以轻松地自己编写这样的验证。例如:
function periodOverlaps(testPeriod, periods) {
for (var i = 0; i < periods.length; i++) {
var period = periods[i];
if (period.start < testPeriod.start && period.end > testPeriod.start)
return true;
if (period.start > testPeriod.start && period.start < testPeriod.end)
return true;
}
return false;
}
用法示例:
var periods = [{
start : new Date('1/1/2015'),
end : new Date('1/3/2015')
}, {
start : new Date('1/5/2015'),
end : new Date('1/7/2015')
}
];
var testPeriod = {
start : new Date('1/2/2015'),
end : new Date('1/3/2015')
};
periodOverlaps(testPeriod, periods);
相关文章:
- 如何在Javascript中验证日期期间与其他日期期间的交叉
- 如何根据其他日期的输入更新日期
- 确定Twig(或JavaScript)中的国际日期格式,以便在其他地方使用
- 在jsp中,隐藏一个基于其他具有日期选择器的字段的字段
- 如何将日期选择器返回的日期格式转换为其他格式
- 从日期选择器中获取默认格式的日期,并在jquery UI中转换为其他格式
- 如何使用可点击按钮在Datepicker日历中选择用户在其他月份的当前日期
- 如何在 UI-日期选择器中选择日期 在其他 UI 日期选择器上
- 日期选取器问题,尝试提交除日期值之外的其他参数
- 日期格式在 Chrome 中给出的结果与其他浏览器中的结果不同
- 为什么本地化仅在单击日期或任何其他按钮后才会更改
- 将 Javascript 日期解析为 C# DateTime,FF 数据是 Chrome 日期以外的其他数据
- 在特定日期将基本图像替换为其他图像.可能
- 如何在 jquery ui 日期选取器中调整其他输入的大小
- 更改其他日期类型字段时,如何修改日期类型字段
- 当请求php脚本生成的图像时,如何使用javascript/其他方法以某种格式打印日期
- 如何将Jquery日期选择器添加到其他脚本中
- 根据日期和其他字段聚合Mongo集合中的数据,并进行计数
- 如何根据其他日期约束jQuery ui日期选择器的最小和最大日期
- 主干日期+其他参数排序