【发布时间】:2016-09-07 22:05:56
【问题描述】:
我有一个看起来像 DOM 的元素
<div data-ng-if="allControllerFieldsAreProvided($index)" class="test-controller-connection">
<a href="" ng-click="fetchUsersFromDataSource($index, 10)">Test Connection</a>
</div>
函数看起来像
$scope.allControllerFieldsAreProvided = function (adSetupIndex) {
return $scope.activeDirectoryConfiguration.activeDirectorySetups[adSetupIndex].name.length > 0 &&
$scope.activeDirectoryConfiguration.activeDirectorySetups[adSetupIndex].activeDirectoryDataSource.host.length > 0 &&
$scope.activeDirectoryConfiguration.activeDirectorySetups[adSetupIndex].activeDirectoryDataSource.port.length > 0 &&
$scope.activeDirectoryConfiguration.activeDirectorySetups[adSetupIndex].activeDirectoryDataSource.userName.length > 0 &&
$scope.activeDirectoryConfiguration.activeDirectorySetups[adSetupIndex].activeDirectoryDataSource.password.length > 0;
};
最初,当没有提供输入时,DOM 元素被隐藏,然后当所有输入都提供时,DOM 元素出现。
问题
当再次删除任何输入(例如,从输入框中删除的文本)时,问题就开始了。在这种情况下,DOM 元素应该消失,但不是
我该如何解决这个问题?
【问题讨论】:
-
如果没有 JavaScript 错误,那么这是一个逻辑问题。在这种情况下,如果我们不知道您的其余代码,我们将无法帮助您。
标签: javascript angularjs angularjs-scope show-hide