帮助JQuery自动完成

时间:2011-07-04 10:42:40

标签: ruby-on-rails jquery-autocomplete

我有以下格式的json。

[{"tag":{"name":"& Awards","id":142}},{"tag":{"name":"& Bisexual Bars","id":207}},{"tag":{"name":"& Clubs","id":40}},{"tag":{"name":"& Imaging","id":1188}}}

我正在使用以下代码

$("#tags_name").autocomplete({
  source: "/companies/autocomplete_tags2.json",
  width: 320,
  dataType: 'json',
  highlight: false,
  scroll: true,
  scrollHeight: 300,
  parse: function(data) {
    var array = new Array();
    for(var i=0; i < data.tag.length; i++){
      array[i] = {data: data.tag[i], value: data.tag[i].value, result: data.tag[i].id };
    }
    return array;
  }
});

当我加载页面时,我得到的错误是“newUncaught SyntaxError:意外的输入结束”

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

您的解析功能对于您拥有的JSON是错误的。您的JSON中有一个对象数组。

应该是

  parse: function(data) {
    var array = new Array();
    for(var i=0; i < data.length; i++){
      array[i] = {data: data[i].tag, value: data[i].tag.name, result: data[i].tag.id };
    }
    return array;
  }