您好我必须根据日期禁用按钮按钮,我的要求是我将拥有值为checkinStartDate和checkinEndDate
的json{
"checkinStartDate": "10/22/2016 09:10:04 AM",
"checkinEndDate": "10/22/2016 19:10:04 PM"
}
例如今天的日期是2016年10月22日,那么条件如下所述。 我必须在checkinStartDate的 1小时(10/22/2016 08:10:04)之前启用按钮, 1小时(2016年10月22日20:10:04 PM)< / strong> checkinEndDate.other之后,此时间按钮应处于禁用模式 任何帮助都会很棒。
答案 0 :(得分:1)
假设您的对象已分配给$ scope.date 那你接下来需要做的是。
$scope.checkDate = function () {
var ONE_HOUR = 60 * 60 * 1000; /* ms */
var myDate = {
"checkinStartDate": "10/22/2016 09:10:04 AM",
"checkinEndDate": "10/22/2016 19:10:04 PM"
}
var checkInStart = new Date(myDate.checkinStartDate);
var checkInEnd = new Date(myDate.checkinEndDate);
var current = new Date();
//only enable during this time
if ((current.getTime() < checkInStart.getTime() + ONE_HOUR) && (current.getTime() + ONE_HOUR > checkInEnd.getTime()))
return false;
//otherwhile disable
return true;
}
在视图中,只需将其调用
即可<button ng-disabled="checkDate()">View<button>
p / s:这只是一个想法,我不确定我的情况是否正确,因为我没有测试环境。 getTime()将返回自1970年1月1日午夜以来的毫秒数和指定的日期。然后你可以用它比较之前提前1小时进行比较。你明白我在说什么吗?