Не удается включить кнопку с отключенным ng в AngularJs - PullRequest
0 голосов
/ 27 июня 2018

Это то, что у меня есть в моем controller.js

$scope.fileAdded = false;

$scope.fileNameChanged = function() {
    $scope.fileAdded = true;
};

Эту кнопку я хочу включить ...

<a ng-disabled="!fileAdded" class="btn btn-primary" role="button">Click</a>

... когда я выбираю файл:

<input type="file" name="file" id="file"
       onchange="angular.element(this).scope().fileNameChanged(this)">

Хотя fileAdded изменяется с false на true, кнопка не активна. Почему он все еще отключен?

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

Вы должны использовать директиву Angular ngChange , в отличие от DOM onchange.

<input type="file" name="file" id="file" ng-change="fileNameChanged()">
0 голосов
/ 27 июня 2018

С onchange вы находитесь вне angJJS. Так что вам нужно самостоятельно запустить цикл дигекта:

$scope.fileNameChanged = function() {
    $scope.fileAdded = true;
    $scope.$digest();
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...