如何在angularJs中使用if else条件

时间:2014-11-27 12:39:55

标签: javascript angularjs

嗨,我刚接触Angular JS, 我想在JavaScript中转换AM / PM格式为例(25-10-2013 18:30到25-10-2013 6:30 PM) 控制器文件

for (var i = 0; i < $scope.AvailableSlots.length; i++) 
    $scope.AvailableSlots[i].AppointmentDate  = Date.parse(moment($scope.AvailableSlots[i].F).format('MM-DD-YYYY HH:mm')) ; 
}

<div>
    <button class="btn btn-danger"  ng-click="cancelAppointment(appointment)">Cancel</button>
</div>

此处取消按钮仅在约会日期是未来日期时出现。否则,应隐藏取消按钮。

3 个答案:

答案 0 :(得分:1)

您可以使用ng-show="isFutureDay"属性执行此操作。

<button class="btn btn-danger" 
        ng-show="isFutureDay" 
        ng-click="cancelAppointment(appointment)">Cancel</button>

其中isFutureDay将是范围内的布尔变量,表示约会日是否为未来日。如果是将来的某一天isFutureDay===true,则该按钮将可见。否则,它将是不可见的。

有关ng-show的进一步文档,请查看here

答案 1 :(得分:0)

如果您使用数据绑定,则可以使用过滤器执行此操作,例如:

{{ AvailableSlots[0].AppointmentDate | date:'MMM dd, yyyy hh:mm a' }}

[0]是为了简单起见。

对于“取消”按钮,您可以使用&#34; ng-show&#34;属性,例如:

ng-show="(AppointmentDate - today's date) > 0"

在按钮内部,只有在条件成立时才会显示。

答案 2 :(得分:0)

首先在js中为isFuture

创建一个布尔值
for (var i = 0; i < $scope.AvailableSlots.length; i++) 
    $scope.AvailableSlots[i].AppointmentDate  = Date.parse(moment($scope.AvailableSlots[i].F).format('MM-DD-YYYY HH:mm')) ; 
    $scope.AvailableSlots[i].IsFuture  = moment().isBefore($scope.AvailableSlots[i].AppointmentDate) ; 
}

然后在js

<button class="btn btn-danger" ng-show="appointment.IsFuture" ng-click="cancelAppointment(appointment)">Cancel</button>