微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Angular ng-show(或ng-if)不更新值更改

我在 plunker一个简单的例子.我在一个元素上有一个ng-show,另一个元素有一个select. select应切换显示/隐藏其他(输入)元素.最初将select设置为Yes会按预期显示一个输入元素.然后将select设置为No会将scope范围值按预期切换为false,但不会隐藏input元素.

我已经搜索了与此相关的其他帖子,我发现的那些帖子在ng-show上有或没有{{}}(我不应该这样)或者没有在$scope上的值(我做).我认为可能是$scope.apply()问题,但是为什么第一个改为Yes工作?同时添加apply仍然不会使No(false)工作.我错过了什么?

TIA!

var app = angular.module('plunker',[]);

app.controller('MainCtrl',function($scope) {
  $scope.conf = {};
});

解决方法

您需要检查ng-show =“conf.is_ieee ==’true’”而不是ng-show =“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>

http://plnkr.co/edit/MXvuhSPB0ChJyDrvPI55?p=preview

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐