Динамически добавлять / удалять опцию из Kendo DrownDownList с Angular

0

У меня есть Kendo DropDownList, как это

<select kendo-drop-down-list="container.KilometerAllowanceDropDown" k-options="KilometerAllowanceOptions" ng-change="kilometerAllowanceChanged()" class="fill-width" id="KilometerAllowance" ng-model="DriveReport.KilometerAllowance">
    <option value="Calculated">A</option>
    <option value="Read">B</option>
    <option value="CalculatedWithoutExtraDistance">C</option>
</select>

Я хочу удалить третий option основанный на bool в моем контроллере. Bool будет оцениваться при загрузке страницы и не изменится после этого.

Я попытался добавить ng-disable или ng-show в третий тег option и привязать его к bool, но он, похоже, не работает.

  • 0
    Вы можете достичь этого с помощью DataSource . Просто используйте массив значений и add / remove значения по мере необходимости.
  • 0
    @Philipp Спасибо, вместо этого я использовал тег ng-options в моем теге select .
Теги:
user-interface
kendo-ui

1 ответ

0

Я решил это, используя тег ng-options теге select. Мой взгляд:

ng-options="option.value as option.key for option in kilometerOptions"

КилометрОпции - это массив объектов, подобных прежним. Мой контроллер:

    var kilometeroptions = new Array();
    kilometeroptions.push({ value: "Calculated", key: "A" });
    kilometeroptions.push({ value: "Read", key: "B" });
    if (!alternativeCalculation) {
        kilometeroptions.push({ value: "CalculatedWithoutExtraDistance", key: "C" });
    }
    $scope.kilometerOptions = kilometeroptions;

alternativeCalculation - это bool, который решит, будет ли включен параметр C.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню