ng-click不能多次使用

时间:2018-06-13 16:44:23

标签: javascript angularjs

我在下拉列表中使用ng-click在另一个下拉列表中设置值,但是如果用户需要更改它,则需要多次单击该值。

据我了解,ng-click应该可以多次使用。但我不能让它不止一次。

<div class="col-md-3">
    <div class="btn-group" uib-dropdown is-open="status.isopen">
        <button id="single-button" type="button" class="btn btn-primary btn-lg" uib-dropdown-toggle ng-disabled="disabled">
                Campaign <span class="caret"></span>
            </button>
        <ul class="dropdown-menu" uib-dropdown-menu role="menu" aria-labelledby="single-button">
            <li ng-repeat="campaign in int.campaigns">
                <a ng-click="int.getPages(campaign.ID)">{{campaign.Name}}</a>
            </li>
        </ul>
    </div>
</div>

这是我的功能。

vm.getPages = function(campaignID) {

    pageService.getPagesByCampaignId(campaignID)
        .then(function(result) {
                vm.pages = result.data;
                console.log('pages returned');
            },
        function(result) {
           console.log('page return failed');
        });
};

我是一个菜鸟,所以我不怀疑我错过了一些简单的东西。

1 个答案:

答案 0 :(得分:0)

通过添加其他功能无意中修复了它。

我将下拉按钮的标题绑定到所选值,现在我可以继续选择不同的选项。

vm.getPages = function (campaignID, campaign) {
                vm.campaignNameDisplay = campaign.Name;
                pageService.getPagesByCampaignId(campaignID)
                    .then(function (result) {
                        vm.pages = result.data;
                        console.log('pages returned');
                    },
                    function (result) {
                        console.log('page return failed');
                    });
            };

和此。

<div class="col-md-3">
        <div class="btn-group" uib-dropdown is-open="status.isopen">
            <button id="single-button" type="button" class="btn btn-primary btn-lg" uib-dropdown-toggle ng-disabled="disabled">
                {{int.campaignNameDisplay}} <span class="caret"></span>
            </button>
            <ul class="dropdown-menu" uib-dropdown-menu role="menu" aria-labelledby="single-button">
                <li ng-repeat="campaign in int.campaigns">
                    <a ng-click="int.getPages(campaign.ID, campaign)">{{campaign.Name}}</a>
                </li>
            </ul>
        </div>
    </div>