淘汰赛 - 根据选择/下拉选项更新UI(过滤数据)?

时间:2012-09-19 19:55:55

标签: select knockout.js filtering knockout-mapping-plugin

如何根据选择/下拉列表中的选择更新此UI?

例如,如果我从select / dropdown中选择一个成员名称,我希望表更新/过滤只显示那些成员行(成员名称在最右边的列)和它们对应的日期标题(灰色背景) )。

如果我从选择/下拉列表中选择提供者名称,我希望表格更新/过滤只显示那些提供者行(左栏中的提供者名称)及其对应的日期标题(灰色背景)。

我正在使用KO映射插件。伪数据是硬编码的,最终将通过ajax返回。

这是所有代码的小提琴(它们都只是在HTML窗格中内联)。你也可以复制/粘贴它并在本地运行它。

http://jsfiddle.net/qBGTh/

非常感谢任何帮助/指导!

1 个答案:

答案 0 :(得分:0)

我的建议是在 eob 级别使用计算值返回已过滤的数组。要在映射过程中添加此计算值,您必须使用映射选项参数中的 create 回调自定义 eob 对象(请参阅{ {3}})

以下是更新的mapping doc以查看其实际效果。

另外,不要忘记再添加2个observable来捕获2个 select 元素的当前值。计算出的值将取决于这两个可观察值。

  

注意:提供的小提琴不会在IE上运行,因为github位于   映射 javascript不会返回IE所需的 content-type 标头。