2016-04-28 41 views
1

我已經開始使用Angular並且沒有太多的經驗。
我遇到了問題。我正在使用ng-showng-model在某些情況下將不同的值綁定到ng模型

它像

<tr ng-show="responseValid"> 
    <td> <input id="nameId" ng-model="model.name"/> </td> 
</tr> 

我在model.name預填充值。

現在,如果響應有效,則輸入標記不會顯示。

但是當我submit形式,nameId值由ng-model="model.name結合「

問題在這裏我想model.name不應包含任何值,如果反應是不是當輸入標籤隱藏有效即但是它沒有發生。

我怎樣才能在model.namenullify/empty價值呢?有沒有什麼可用的,我可以在標籤本身使用?

+0

做輸入標記中的文本在無效情況下。 – Prasad

回答

1

當你把你的模型,檢查validResponse的狀態,並設置基於此

例如您的模型數據:

$scope.sendModel = function(){ 
    $scope.model.name = $scope.validResponse? $scope.model.name : ''; 
} 

更高級的例子要清除http://codepen.io/gpincheiraa/pen/mPzmxO

2

您可以使用ngSwitch或ngIf。

<tr ng-if="responseValid"> 
    <td> <input id="nameId" ng-model="model.name"/> </td> 
</tr> 

如果條件不符合,angular會完全移除DOM元素,直到條件滿足。

3

你應該使用ng-if而不是ng-show我相信。

ng-if刪除DOM中的元素,而ng-show僅設置display:none

相關問題