Не могу понять, почему не работает typeahead, что делать?

Добрый вечер.
Пытаюсь разобраться с typeahead плагином для jquery.
Хочу использовать шаблоны для результата, но видимо что то делаю не так.
Когда ввожу первый символ, получаю ошибку.
В чем может быть проблема.

Uncaught TypeError: this.source is not a function

<script type="application/javascript" src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
<script type="application/javascript" src="/assets/router/th.js"></script>
<script type="application/javascript" src="/assets/router/hogan.js"></script>


HTML
<input id="countryField" autocomplete="off" class="typeahead select-dropdown" type="text" placeholder="Страна">


JS
$('#countryField').typeahead(false, {
      name: 'country',
      valueKey: 'name',
      source: [
          {"id": 1, "name": 'Toronto'},
          {"id": 2, "name": 'Montreal'},
          {"id": 3, "name": 'New York'},
          {"id": 4, "name": 'Buffalo'},
          {"id": 5, "name": 'Boston'},
          {"id": 6, "name": 'Columbus'},
          {"id": 7, "name": 'Dallas'},
          {"id": 8, "name": 'Vancouver'},
          {"id": 9, "name": 'Seattle'},
          {"id": 10, "name": 'Los Angeles'}
      ],
      template: [
        '<p class="repo-id">{{id}}</p>',
        '<p class="repo-name">{{name}}</p>',
      ].join(''),
      engine: Hogan
    });
  • Вопрос задан
  • 242 просмотра
Пригласить эксперта
Ответы на вопрос 1
@bkosun
А так?

$('#countryField').typeahead(false, {
      name: 'country',
      valueKey: 'name',
      source: function(){
        return [
          {"id": 1, "name": 'Toronto'},
          {"id": 2, "name": 'Montreal'},
          {"id": 3, "name": 'New York'},
          {"id": 4, "name": 'Buffalo'},
          {"id": 5, "name": 'Boston'},
          {"id": 6, "name": 'Columbus'},
          {"id": 7, "name": 'Dallas'},
          {"id": 8, "name": 'Vancouver'},
          {"id": 9, "name": 'Seattle'},
          {"id": 10, "name": 'Los Angeles'}
      ];
      },
      template: [
        '<p class="repo-id">{{id}}</p>',
        '<p class="repo-name">{{name}}</p>',
      ].join(''),
      engine: Hogan
    });
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы