Удалить опцию в выпадающем списке нокаутом JS - PullRequest
0 голосов
/ 16 октября 2018

Здравствуйте. Можно ли каким-либо образом удалить опцию из выпадающего списка с выбыванием при начальной загрузке.

<select data-bind="options: Reasons,  optionsText: 'Title', optionsValue: 'Id', value: SelectReason,
optionsCaption: 'Choose..', optionsAfterRender: setOptionRemove"></select>

Код в модели представления, я пытаюсь сделать это с помощью optionsAfterRender,

        self.setOptionRemove= function(option, item) {
            if(item.Id == 1){
            ko.applyBindingsToNode(option, { remove: item.remove}, item);
             }
         }

Я хочу использовать первую опцию в качестве переключателя.

Спасибо.

1 Ответ

0 голосов
/ 17 октября 2018

Возможно, вместо этого вы могли бы привязать список к вычисляемому, который исключил бы опцию, которую вы не хотите видеть в списке, вместо того, чтобы пытаться удалить ее.

self.filteredReasons = ko.computed(function() {
     return ko.utils.arrayFilter(self.Reasons(), function(reason) {
          if(reason.Id !== 1) {
               return true;
          }
     });
});

Обновленная привязка:

<select data-bind="options: filteredReasons ,  optionsText: 'Title', optionsValue: 'Id', value: SelectReason, optionsCaption: 'Choose..'"></select>
...