我在不同的div中有多个开始日期。如果当前日期的div日期超过365天,我需要隐藏付款按钮。奥雷尔我需要表现出来。我想在angularjs中这样做。
1)如果第一个div日期差异小于365天,我需要显示付款按钮。否则我需要隐藏。
2)与所有div相同。我有超过50个div。
{
date:[{
date:"01/01/2016"
}
{
date:"01/01/2016"
}
{
date:"01/01/2016"
}
{
date:"01/01/2016"
}
{
date:"01/01/2016"
}
{
date:"01/01/2016"
}
]
}
var date2 = new Date();
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
var diffdate = Math.ceil(timeDiff / (1000 * 3600 * 24));
for (var i=0;i<data.length;i++){
var date1 = data[i].date;
var date2 = new Date();
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
var diffdate = Math.ceil(timeDiff / (1000 * 3600 * 24));
$scope.differnece = diffdate.map(Number)
if($scope.differnece > 365){
$("$pay").hide();
}else{
$("#pay").show();
}
}
<button id="pay">Pay</button>
这里内循环我得到了所有两个日期之间的差异。但请帮助我如何根据每个div差异日期写出条件。
答案 0 :(得分:0)
在你的控制器中,
首先初始化
$scope.showButton = true; //To show the button initially. Else set it to false.
<强>编辑:强>
由于您使用多个分部,
if($scope.differnece > 365){
if($scope.showButton) {
$scope.showButton = false;
}
}
在yout模板中,使用ng-show指令。
<button id="pay" ng-show="showButton">Pay</button>
当showButton的值为true时,显示按钮,当设置为false时,按钮将隐藏。