2014-06-12 127 views
0

我有一個輸入字段,可以根據條件啓用或禁用該字段。其相應的標籤有'*'表示輸入欄是強制性的。目前,「*」一直顯示,只有在輸入字段可編輯時才顯示。當輸入字段的只讀屬性發生變化時,AngularJS標籤發生更改

<label>Field Label *</label> 
<input ng-model="someObject.value" ng-if="!someObject.allowEdit" ng-readonly="true"/> 

我想補充的條件,如果輸入字段是隻讀的,然後不顯示「*」,對於這一點,我做如下的東西,但我不知道如何檢查輸入字段的只讀屬性與angularJS。

<label>Field Label 
    <div style="display:inline" ng-show="[if inupt field.readonly == false]">*</div> 
</label> 
<input ng-model="someObject.value" ng-if="!someObject.allowEdit" ng-readonly="true"/> 
+0

jsfiddle將不勝感激。 – iJade

回答

1

試試這個:

<div ng-controller="MyCtrl"> 
     <div ng-repeat="item in data"> 
      <label>Field Label 
       <span style="display:inline" ng-show="!item.allowEdit">*</span> 
       <span style="display:inline" ng-show="item.allowEdit">&nbsp;</span> 
      </label> 
      <input ng-model="item.name" ng-hide="item.allowEdit"/> 
      <input ng-model="item.name" ng-show="item.allowEdit" ng-readonly="true"/> 
     </div> 
    </div> 

這裏是一個Fiddle

1

最後我想出了這個解決方案更加簡潔。

<label>Field Label {{someObject.allowEdit ? " *" : ""}}</label> 
相關問題