typeahead.js没有错误但没有工作

时间:2015-09-22 12:58:21

标签: javascript typeahead.js

我正在尝试实现预先输出,但出于某种原因,它不会出现。

room.js:

var data = [];
$.get('url_to_json', function(data) {
  data = JSON.parse(data);
});

var students = new Bloodhound({
  limit: 5,
  datumTokenizer: Bloodhound.tokenizers.obj.whitespace('global_id'),
  queryTokenizer: Bloodhound.tokenizers.whitespace,
  local: data
});

students.initialize();

$('.search_by_name').typeahead({
    highlight: true
  },
  {
    name: 'name_first',
    displayKey: 'global_id',
    source: students.ttAdapter()

  });

room.html:

<input class="form-control search-by-name" placeholder="Ex: smith1jo / 123456" id="id_search" name="search" type="text">

我访问的网址只是这个结构中json的django HttpResponse:

[
    {
        'global_id': 'value1',
        'name_first': 'value2',
    },
    {
        'global_id': 'value3',
        'name_first': 'value4',
    },
]

当我转到页面时,javascript控制台不会抛出任何错误,但是类型提前功能不会显示。我没注意到区别。

1 个答案:

答案 0 :(得分:0)

只有在文档准备好后才需要调用代码。将所有内容包裹在

$(document).ready(function () {
    // your code here
});

它应该有用。

这是一个有效的plunker