我在plunker有一个简单的例子。我在一个元素上有一个ng-show而在另一个元素上有一个select。 select应切换显示/隐藏其他(输入)元素。最初将select设置为Yes会按预期显示另一个输入元素。然后将select设置为No会将范围值按预期切换为false,但不会隐藏输入元素。
我已经搜索了与此相关的其他帖子,我发现的那些帖子在ng-show上有或没有{{}}(我不应该这样)或者没有价值$范围(我这样做)。我认为可能是$ scope.apply()问题,但是为什么第一个改为Yes工作?同时添加apply仍然不会使No(false)工作。我错过了什么?
TIA!
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.conf = {};
});
答案 0 :(得分:5)
您需要检查 ng-show =" conf.is_ieee ==' true'" 而不是 ng-show =&# 34; conf.is_ieee" 即可。检查这个plunker。
<div class="col-md-4" ng-show="conf.is_ieee=='true'">
<label class="form-label">IEEE Conference ID:</label>
<input type="text" class="form-control" name="ieee-id" ng-model="conf.ieee_id"/>
</div>
&#13;