首页 > 解决方案 > 在创建范围 angularjs 的指令中访问和操作变量

问题描述

我在 AngularJS 中有一个控制器和一个视图,其目标是创建一个自动完成下拉列表。我对功能有一些问题。我开始输入,选项显示在输入下方,但我想单击其中一个,然后输入的值会改变,建议的列表会消失。目前还没有发生这种情况。

这是我的控制器:

$http.get(API_URL + "get/cities")
    .then(function (response) {
            $scope.cities = response.data;
        },
        function () {
            console.log('error');
        });

$scope.selectCity = function (cityId, name) {
    $scope.citySearch = name;
    $scope.showCityList = false;
};

这是视图:

<div class="row">
    <div class="col-xs-12">
        <div class="form-group">
            <input type="text" ng-model="citySearch" ng-change="showCityList = true" class="form-control input-lg" placeholder="Град">
            <ul ng-if="citySearch.length > 0 && showCityList" class="list-group">
                <li ng-repeat="city in cities | filter: citySearch | orderBy:'name'" class="list-group-item" ng-click="selectCity(city.id, city.name)">@{{ city.name }}</li>
            </ul>
        </div>
    </div>
</div>

我应该提到这个 HTML 代码被放置在 ng-switch-when 中。

标签: angularjs

解决方案


推荐阅读