Как поставить галочку на ящиках angular.js с помощью мультиселекта

Я использую эту библиотеку angular-bootstrap-multiselect ( https://github.com/sebastianha/angular-bootstrap-multiselect) и у меня возникли проблемы. Я хочу добавить опцию под названием "выбрать все" в этом раскрывающемся списке, которая выберет все поля. Это то, что у меня есть для выпадающего списка, который выбирает параметры из rest-api. Я добавил "Выбрать все" в массив ( Badlist), чтобы это был первый вариант, когда вы щелкаете по раскрывающемуся списку. Я просто не знаю, как сделать так, чтобы ВСЕ выбрано, как только я нажму на него.

<multiselect class="project-multiselect-dropdown"

            ng-model="Badlist.links"
            options="link.name for link in BadLinksList"
            data-multiple="true"
            scroll-after-rows="3"
            max-width="100"
            tabindex="1"
            ms-selected="{{Badlist.links}}"
            ng-change="incompleteEntries('BAD');

          </multiselect>

Сейчас он просто действует как обычный выпадающий список. Я думаю, что в библиотеке есть функция checkAll(), но я не уверен, где и как ее использовать. Я думал о добавлении наблюдателя в мой контроллер, чтобы он активировал функцию checkAll(), как только обнаружит, что пользователь нажал "Выбрать все". Я не знаю, как вызвать функцию checkAll() в моем $scope. часы. Обычно я делаю это на мой взгляд ( ng-click="checkAll())", но это часть раскрывающегося списка, а не кнопка.

Кстати, вот функция checkAll() в этой библиотеке (просто чтобы сэкономить вам время).

  scope.checkAll = function() {
                    if(!isMultiple) {
                        return;
                    }
                    angular.forEach(scope.items, function(item) {
                        item.checked = true;
                    });
                    setModelValue(true);
                };

0 ответов

Другие вопросы по тегам