删除下拉列表中的选项 knockout js
Remove an option in dropdown list knockout js
你好有什么方法可以在初始加载时从淘汰下拉列表中删除一个选项。
<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);
}
}
我想将第一个选项用作单选按钮。
谢谢。
也许您可以将列表绑定到一个计算结果,该计算结果会排除列表中您不需要的选项,而不是尝试将其删除。
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>
你好有什么方法可以在初始加载时从淘汰下拉列表中删除一个选项。
<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);
}
}
我想将第一个选项用作单选按钮。
谢谢。
也许您可以将列表绑定到一个计算结果,该计算结果会排除列表中您不需要的选项,而不是尝试将其删除。
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>