2012-02-21 79 views
1

小提琴:http://jsfiddle.net/tdRCB/3/KnockoutJS映射值的功能

我在viewModel名为filterInfoobservableArray
我有很多html控件创建过滤器(输入,选择等)

什么是让filterInfo的最佳方式包含在我的HTML控件的所有值? 例如:

我在输入值123和选择价值1,所以我需要,我filterArray包含两个元素:

[{field: 'title', value: '123'}, {field: 'type', value: 1}] 

如果我输入的是空的,我只在下拉列表中选择第二元件,所得的阵列将是:

[{field: 'type', value: 2}] 

由于

回答

1
+0

是的,它的工作原理。但是,这样,我必须创建如此多的可观察值...每个过滤器都有可观察的值。没有它,它有可能得到期望吗? – Lari13 2012-02-21 14:29:14

+0

如果您将有一定数量的过滤器,我认为这种方法将是不错的选择。在其他情况下,如果您打算添加更多过滤器和更多类型,我建议您创建具有所有必需属性和模板的过滤器实体以显示过滤器。在这个模板中,你将决定如何在类型上显示过滤器等等。我在文章中描述了这种方法,但是它是用俄语写的。我相信你会通过文章http://delmadman.blogspot.com/2012/01/javascript-c-knockoutjs.html中的小提琴样本来理解我的解决方案 – Madman 2012-02-21 15:02:47