2017-10-19 65 views
0

我在想如何禁用ng-model(或给他“null”)当我的元素被隐藏?AngularJS - 当隐藏元素时禁用ng-model

例如,我有选择输入ng-model =“code”。以下我有元素

<div class="form-group" ng-show="code=='group'"> 
<select class="form-control" ng-required="code =='group'" ng-model="groupWork" ng-show="isNew" some ng options"> 
</select> 

所以 - 当我点击第一个输入并获得“集团”的价值,在选择点击选项,并想改变我的想法,并把在第一个输入值“NOGROUP”我的ng模型仍在工作并发送帖子。

我该如何解决?

+2

使用'ng-if'而不是'ng-show' –

回答

0
<div class="form-group" ng-if="code=='group'"> 
<label class="col-md-4 col-lg-4 control-label">Group</label> 
<div class="col-md-7 col-lg-7"> 
    <select class="form-control" ng-required="code=='group'" ng-disabled="!edit || !isNew" name="groupWork" ng-model="groupWork" ng-options="groupWork.kod for groupWork in comboGroupWork track by groupWork.id" ng-show="isNew"> 
    </select> 
    <input type="text" class="form-control" name="groupWork" ng-model="groupWork.code" ng-required="code=='group'" ng-disabled="true" ng-show="!isNew"> 
</div> 

我测试了NG-如果在我的div形式基,并且还选择当组是隐藏的,但前面我挑选了一些组 - ng的模型发送。我怎样才能做到这一点?

@edit - 我删除了即使输入和ng显示在选择改变相同的ng如果。仍然当字段被隐藏 - ng模型得到了这个。

+0

没关系,我终于用另一种方式做了。 – Kondziowsky