【发布时间】:2011-10-06 02:00:41
【问题描述】:
我有多个输入框,我想根据用户的选择隐藏/取消隐藏。
我可以通过为每个输入设置一个单独的dependentObservable 来实现这一点,然后让dependentObservable 观察父选择。
viewModel.showField1= ko.dependentObservable(function () {
return viewModel.selectedType() ? IsFeatureVisible(viewModel, "BusinessFieldName1") : false;
}, viewModel
);
viewModel.showField1= ko.dependentObservable(function () {
return viewModel.selectedType() ? IsFeatureVisible(viewModel, "BusinessFieldName2") : false;
}, viewModel
);
这对每个领域来说都有些乏味。我可以将元素与可以带参数的dependentObservable 函数绑定吗?重要的是它应该在父级更改时触发
其他选项是,当父级更改时,我循环遍历元素并隐藏/取消隐藏,但这需要我映射元素 ID 字段的业务名称。
当前
<tr data-bind="visible: showField1">
<tr data-bind="visible: showField2">
想要的
<tr data-bind="visible: showField('BusinessFieldName1')">
<tr data-bind="visible: showField('BusinessFieldName2')">
【问题讨论】:
标签: knockout.js