2016-02-19 4 views
0

Я использую плагин jQuery EasyAutocomplete от http://easyautocomplete.com/.jQuery EasyAutocomplete не работает должным образом

Я использую файл JSON для получения данных. Кажется, он не фильтрует результаты должным образом. Он ищет только первые две записи, например, он показывает только первые 10, и если строка поиска не находится в этих записях, она игнорирует остальные.

Кроме того, как я могу искать либо аэропорт, либо аэропорт? i.e Если это соответствует либо аэропорту или имени аэропорта?

HTML

<input type="text" id="autocomplete"> 
<input type="text" id="airportid"> 
<input type="text" id="airportname"> 

JQuery

$(document).ready(function() { 
    var options = { 
     url: "airportinfo.json", 
     getValue: function(element) { 
      return element.name; 
     }, 

     list: { 
      onChooseEvent: function() { 
       var selectedItemValue = $("#autocomplete").getSelectedItemData().name; 
       var selectedItemValue2 = $("#autocomplete").getSelectedItemData().airportid; 
       $("#airportname").val(selectedItemValue); 
       $("#airportid").val(selectedItemValue2); 
      }, 
     } 
    }; 

    $("#autocomplete").easyAutocomplete(options); 
}); 

мой JSON файл

[{ 
    "airportid": "JASB", 
    "size": "medium_airport", 
    "name": "John Bay Airport", 
    "lat": "18.57500076", 
    "lon": "36.5333004", 
}, { 
    "airportid": "JAAD", 
    "size": "closed", 
    "name": "Adelaide Airport", 
    "lat": "-12.68310165", 
    "lon": "16.2942009", 
}, { 
    "airportid": "JAAE", 
    "size": "small_airport", 
    "name": "Aberdeen Airport", 
    "lat": "-12.46670151", 
    "lon": "14.06669998", 

}] 

ответ

3

Оказывается, я пропустил someth из документации. Я помещаю его здесь, в случае, если кто-то может иметь один и тот же вопрос в будущем:

list: { 
    onChooseEvent: function() { 
     var selectedItemValue = $("#autocomplete").getSelectedItemData().name; 
     var selectedItemValue2 = $("#autocomplete").getSelectedItemData().airportid; 
     $("#airportname").val(selectedItemValue); 
     $("#airportid").val(selectedItemValue2); 
    }, 
    match: { 
     enabled: true 
    }, 
}, 

Я забыл добавить «Совпадение: {включено: истинно}

Смежные вопросы