我如何在textarea内调整ng-readonly

时间:2015-07-06 12:44:55

标签: angularjs

我正在寻找一种在ng-readonly声明中调整ng-if的方法..我尝试了一些方法,这是我的最新版本..

ng-if="note.owner_image === user.image "  ng-readonly="false"

需要一些助手..

<textarea 
                  class="wm-textarea-notes"
                  ng-model="noteEdit.note_value" 
                  columns="1"  
                  placeholder="Add a note"
                  ng-readonly="true"
              ng-if="note.owner_image === user.image "  ng-readonly="false"
              ng-if="note.owner_image === "" "  ng-readonly="false


                  ></textarea> 

3 个答案:

答案 0 :(得分:10)

ng-if用于根据给定的条件隐藏或显示元素。 如果你想要条件适用于ng-readonly,你应该把它放在ng-readonly属性中:

<textarea 
    class="wm-textarea-notes"
    ng-model="noteEdit.note_value" 
    columns="1"  
    placeholder="Add a note"
    ng-readonly="note.owner_image !== user.image || note.owner_image !== ''">
</textarea> 

答案 1 :(得分:2)

那不是isReadOnly所做的。它只是根据值创建或删除元素。

你想要的是有一个范围方法来进行这些测试,让我们称之为textarea并让<textarea class="wm-textarea-notes" ng-model="noteEdit.note_value" columns="1" placeholder="Add a note" ng-readonly="isReadOnly()"></textarea> 像这样:

true

因此,在控制器的某个位置,您必须创建该方法,该方法将为false返回textarearule以确定其状态。

答案 2 :(得分:0)

在最新的角度(6/7)中,您只需使用只读

进行设置
<mat-form-field>
    <input matInput readonly="true" placeholder="{{placeholder}}" value="{{value}}">
</mat-form-field>