jquery自动完成,从文本文件加载

问题描述:

我想加载在我的jquery自动完成数据从文本文件,以减少页面加载大小。我想:jquery自动完成,从文本文件加载

<script type="text/javascript"> 
    $(document).ready(function(){ 
      var practitioner_data = new Array(); 
      $.get("/live_practitioners.txt", { }, 
      function(data){ 
       var data_array = new Array(); 
       data_array = data; 
       $("#search_therapist_name").autocomplete(data_array, {minChars: 1, matchContains: true, mustMatch: true, selectFirst: false, formatItem: function(item) { return item.text; } }).result(function(event, item) { document[\'' . $str_form_name . '\'].counsellor_id.value=item.counsellor_id; }); 
      }); 
    }); 
</script> 

萤火虫显示我的第一请求txt文件,数据看起来正确的格式:

[{text:'Dr. Tania Abdulezer', counsellor_id:'877'}, {text:'Helen Acton', counsellor_id:'712'}] 

然而,当我开始输入到文本框中,Firebug是我展示一个请求而作出,对于每一个新的字母输入,去:

http://rscpplocal/%5B%7Btext:%27Dr.%20Tania%20Abdulezer%27,%20counsellor_id:%27877%27%7D,%20%7Btext:%27Helen%20Acton%27,%20counsellor_id:%27712%27%7D%5D?q=r&limit=10&timestamp=1296041901116 

首先,我不知道为什么它是使每一次新的请求,我想从一个字符串中加载它的点,然后作为数据提供,因此只需要一个请求。其次,我不知道为什么这些后续请求似乎认为文件名是数据!根据我所知道的,自动完成的第一个参数可以是数据,也可以是URL。我猜autocomplete认为我的数据实际上是一个URL。

任何想法我做错了请吗?

我已经破解了它。

我正在检索的数据当然只是一个字符串。因此,考虑到它的URL自动完成,并提出新的要求。

我可以把我的JSON字符串与数组:

var data_array = eval(data);