0
我对如何处理Knockout.js中的实时搜索过滤功能有所了解。但是我有新的复杂的要求,即最终的输出将看起来像下面...实时搜索过滤器嵌套级别的淘汰赛js
当用户点击列出来的搜索结果,他可能有另一组儿童名单里面应该有“N '钻井的次数!
我试着用简单的实时搜索过滤功能。我失去了一些东西。我不知道如何从Json加载多级数据,以及如何在knockout JS中进行绑定。
任何想法?
我对如何处理Knockout.js中的实时搜索过滤功能有所了解。但是我有新的复杂的要求,即最终的输出将看起来像下面...实时搜索过滤器嵌套级别的淘汰赛js
当用户点击列出来的搜索结果,他可能有另一组儿童名单里面应该有“N '钻井的次数!
我试着用简单的实时搜索过滤功能。我失去了一些东西。我不知道如何从Json加载多级数据,以及如何在knockout JS中进行绑定。
任何想法?
我偶然发现了类似的问题。了解Knockout如何检测哪个可观察值会影响计算值是很重要的。我注意到,在所有示例中,observables都是在计算函数作用域中调用的。虽然如果我在过滤函数(子范围)上调用它,计算未更新。我在计算函数的开始尝试调用它们,以便过滤函数可以通过同一范围内的变量访问值。这似乎工作,每次可观察的变化 - 计算更新。
这里我修改了你的计算器,它过滤所有的字段。
self.filteredRecords = ko.computed(function() {
var idSearch = self.idSearch(),
nameSearch = self.nameSearch().toLowerCase(),
townSearch = self.townSearch();
return ko.utils.arrayFilter(self.records(), function (r) {
return r.id.toString().indexOf(idSearch) !== -1 &&
r.name.toLowerCase().indexOf(nameSearch) !== -1 &&
(r.homeTown === townSearch || townSearch === "");
});
});
http://jsfiddle.net/tyrsius/67kgm/ - 这是我开始的URL。但是我不知道如何在我的问题中插入插图时加载嵌套级别的数据。 – Vasethvan 2014-09-01 14:45:43
也许[这](http://stackoverflow.com/questions/25564936/knockoutjs-recurring-array/25565664#25565664)递归将帮助 – 2014-09-01 14:46:16
嵌套在[KO文档](http:// knockoutjs .COM /文档/不显眼的事件,handling.html#活例子嵌套子女)。至于JSON,请使用[映射插件](http://knockoutjs.com/documentation/plugins-mapping.html) – Tyblitz 2015-01-17 14:19:33