data-binding - 启用选择控件的某些选项,使用敲除基于对象数组的某些属性禁用其余选项
问题描述
我是淘汰新手,想使用选择表单控件并根据数组中对象的属性启用一些选项绑定到选择控件。
绑定到选择表单控件的对象数组如下:
soldRequestBuyerType =
[{id: 0, description: "Highest Bidder at Auction", status: "false"}
{id: 1, description: "Nominate Another Buyer", status:"true"}
{id: 2, description: "Book to Selling Agent", status:"true"}];
如果绑定对象的状态属性为 true,则应启用该选项以进行选择,如果为 false,则应禁用该选项。
请帮助我使用敲除提供与选择控件的绑定。
解决方案
您可以使用计算的 observable 来完成此操作:
function ViewModel() {
var vm = this;
vm.soldRequestBuyerType = [
{ id: 0, description: "Highest Bidder at Auction", status: false },
{ id: 1, description: "Nominate Another Buyer", status: true },
{ id: 2, description: "Book to Selling Agent", status: true }
];
vm.availableSoldRequestBuyerType = ko.pureComputed(() => {
return vm.soldRequestBuyerType.filter((value) => value.status);
});
}
工作小提琴:https ://jsfiddle.net/thebluenile/p86La5d3/
如果您愿意,您实际上也可以使status
属性可观察,然后选择菜单将在这些更改时自动更新。
推荐阅读
- bash - 我怎样才能让 kubectl 保持沉默?
- android - 使用 java 应用程序实现 kotlin 模块产生 java.lang.NoClassDefFoundError: 资源类解析失败
- javascript - 使用辅助函数时未传递 Javascript 值
- html5-canvas - 在复杂的 HTML 画布形状周围(和内部)描边?
- database - 时空数据库/数据处理框架
- c# - DataTrigger 未在 DataGrid 中触发
- wordpress - 使用 Chart.js 从表单字段中绘制图形
- javascript - 如何为这些问题拍照
- bluetooth - 无法连接树莓派 Pi3B 蓝牙到 HC-06 模块?
- firebase - 访问 RemoteConfig 创建循环 Flutter Web