2016-11-02 26 views
1

我試圖做一個搜索功能,根據標題過濾掉位置。但我似乎無法弄清楚如何獲得位置數組中的標題。我曾嘗試過location.title,並返回未定義。帶敲除的實時搜索

var locationArray = [ 
    {title:'State House', location:{lat: 41.763711, lng:-72.685093} }, 
    {title:'Hartford School', location:{lat: 41.755042, lng:-72.665532} }, 
    {title:'BurgerKing', location:{lat: 41.757419, lng:-72.664175} }, 
    {title:'Subway', location:{lat: 41.767228, lng:-72.676470} }, 
    {title:'Quiznos', location:{lat: 41.764117, lng:-72.671873} } 
    ]; 



var ViewModel = function() { 
    var self = this; 

    self.filter = ko.observable(''); 

    self.items = ko.observableArray(locationArray); 
    console.log(locationArray); 

    self.filteredItems = ko.computed(function() { 
    var filter = self.filter(); 
    if (!filter) { return self.items(); } 
    return self.items().filter(function(i) { return i.indexOf(filter) > -1; }); 
    }); 
}; 

ko.applyBindings(new ViewModel()); 

這裏是我JS提琴https://jsfiddle.net/0qy8qmgm/

回答

0

你靠近,請檢查該更新的小提琴 https://jsfiddle.net/0qy8qmgm/1/

我只能改變

return self.items().filter(function(i) { return i.indexOf(filter) > -1; }); 

return self.items().filter(function(i) { return i.title.indexOf(filter) > -1; });