2016-11-16 113 views
0
<td> 
    <input type="checkbox" ng-model="alert.acknowledged" ng-disabled="alert.acknowledged" ng-click="onacknowledgedClick(alert)"></td> 
<td> 
<span ng-if="!alert.acknowledgeInProgress">{{alert.acknowledgedComments}}</span> 
<div ng-if="alert.acknowledgeInProgress"> 
    <input type="text" style="height:30px; width:150px" ng-model="alert.acknowledgedComments"/> 
    <button type="button" class="btn btn-primary" ng-click="saveAlert(alert)"> Submit </button> 
    <button type="button" class="btn btn-primary" ng-click="cancelAlert(alert)" data-dismiss="modal"> Cancel </button> 
</div> 

当我点击复选框按钮时,弹出提交按钮的文本文本框。在文本框中输入评论后,当用户点击提交按钮时,复选框应该被禁用。任何人都可以给我一些这方面的投入?如何禁用复选框按钮,一次点击提交按钮?点击复选框按钮,将显示文本框并提交按钮,点击提交按钮应该禁用复选框按钮

$scope.saveAlert = function(alert) { 
    $scope.alert.acknowledged = true; 
    /*alert.acknowledgeInProgress = true;*/ 
    var alertUrl = $incidentsUrl+ "/" +alert.alertForIncident.incidentID+"/alerts/"+alert.alertID; 
    $http.put(alertUrl, alert).then(function(result) { 
     alert.acknowledgeInProgress = false; 
    });  
} 

回答

0

你不需要对刚刚设置的NG-模型NG-模型=“alert.acknowledgeInProgress”复选框将设置为true的复选框的NG单击,将触发的放映输入和按钮。

<td> 
     <input type="checkbox" ng-model="alert.acknowledgeInProgress" ng-disabled="alert.acknowledged" ng-click="onacknowledgedClick(alert)"></td> 
    <td> 
    <span ng-if="!alert.acknowledgeInProgress">{{alert.acknowledgedComments}}</span> 
    <div ng-if="alert.acknowledgeInProgress"> 
     <input type="text" style="height:30px; width:150px" ng-model="alert.acknowledgedComments"/> 
     <button type="button" class="btn btn-primary" ng-click="saveAlert(alert)"> Submit </button> 
     <button type="button" class="btn btn-primary" ng-click="cancelAlert(alert)" data-dismiss="modal"> Cancel </button> 
    </div> 
+0

在JS控制器中,我是否需要修改任何东西? –

+0

你没有显示你的控制器,所以我不知道,但从我看不到。 – racamp101