ngDisabled和ngClick无法一起工作

时间:2015-04-28 14:58:33

标签: angularjs

我有这样的表格:

 <div class="form-group">
                <label for="GrpName"> Mail:</label>
                <input ng-model="customerToUpdate.mail" type="text" class="form-control" id="name">
                    <button type="button" class="btn btn-default" ng-click="loadCustomer()">
                      Load
                    </button>
              </div>

              <div class="form-group">
                <label for="GrpName"> Username:</label>
                <input ng-disabled="{{isDisabled}}"  ng-model="customerToUpdate.username" type="text" class="form-control" id="name">
              </div>

控制器:

$scope.isDisabled = true;

$scope.loadCustomer = function() {

    Customer.getByEmail($scope.customerToUpdate.mail)
              .success(function(customer, status, headers, config) {

                    if(!isEmptyObject(customer)){
                        $scope.isDisabled = false;
                    }else
                    $scope.isDisabled = true;

        });
    };

使用chrome,我可以检查并看到ng-disabled已更改为truefalse但没有更新UI。我也尝试了readonly,但结果相同......

我错过了什么?

2 个答案:

答案 0 :(得分:3)

ng-disabled is bound with '=' not with '@',因此您不应使用括号:

转动你的

<input ng-disabled="{{isDisabled}}"  ng-model="customerToUpdate.username" type="text" class="form-control" id="name">

<input ng-disabled="isDisabled"  ng-model="customerToUpdate.username" type="text" class="form-control" id="name">

它应该有效!

答案 1 :(得分:-1)

发出http请求后,在更改$ scope后的回调中你必须使用 $范围$适用()。 在视野中强制反思