jQuery的Autocomplete插件的远程url取json数据的问题

Posted ChineseMoonGod

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery的Autocomplete插件的远程url取json数据的问题相关的知识,希望对你有一定的参考价值。

关于远程返回的json数据的展示,以前一样的代码,如果是本地写好的json串数据,插件显示就没有问题,一旦换成ulr方式读取一样的数据,插件就不能正常显示问题了。

今天偶然搜索资料找到一篇csdn上有人提问的问题,也是相同的问题

http://topic.csdn.net/u/20090703/14/8d349262-8ca1-4bf5-998d-3a0712412149.html

有高人解答了

技术分享
技术分享
$("#autocomplete").autocomplete("data.aspx", {
minChars: 0,
max:15,
width: 200,
scroll: false,
scrollHeight: 500,
//需要把data转换成json数据格式
parse: function(data) {
           if (data != "") {
    return $.map(eval(data), function(row) {
  return {
   data: row,
  value: row.name,
  result: row.name + " <" + row.to + ">"
  }
  });
         }
  },
formatItem: function(data, i, total) {
return "<div style=‘float:left‘>"+data.name+data.to+"</div>"
},
formatMatch: function(data, i, total) {
return data.name;
},
formatResult: function(data, value) {
return data.name;
}
}).result(function(event, data, formatted) {
$("#twoColum_abbr").val(data.to);
});
技术分享
技术分享

在数据返回回来之后,还要在进行一次处理

关键点就在于

技术分享
技术分享
 //需要把data转换成json数据格式,注意必须判断data是否为空,否则出异常,如下红色标注
        parse: function(data) {
           if (data != "") {
    return $.map(eval(data), function(row) {
  return {
   data: row,
  value: row.name,
  result: row.name + " <" + row.to + ">"
  }
  });
         }
  },
技术分享
技术分享

这样处理一下,就可以正常的对数据进行操作了。








































以上是关于jQuery的Autocomplete插件的远程url取json数据的问题的主要内容,如果未能解决你的问题,请参考以下文章

jsp关于jquery插件autocomplete的使用问题

jquery.autocomplete联想补全插件及使用中遇到的问题

JQuery的Autocomplete 插件如何应用

JQuery 插件 autocomplete

07 Jquery UI Autocomplete 自动补全插件

JQuery UI之Autocomplete多值输入远程缓存与组合框