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 + ">"                  }              });         }          },

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

时间: 2024-08-03 11:32:07

jQuery的Autocomplete插件的远程url取json数据的问题的相关文章

JQuery 的Autocomplete插件 result

工作当中用到了JQuery 的Autocomplete插件,但是遇到的是非常规使用的问题. 其一是下拉菜单的显示和填入文本框的结果要求的字符串不一样,即显示用户名,所属部门,但是填入文本框里的是用户名和电话号码 其二是在用户Select过后,需要触发事件,把用户的ID传到另一个隐藏的文本框中 首先咱比较懒,于是在网上google了一下技术方案,发现都比较复杂.出于想偷懒的目的,研究了Autocomplete的在线DOC以后,发现有很简单的解决方案 首先是应用Autocomplete的format

java对象转JSON JS取JSON数据

JsonConfig config = new JsonConfig(); config.setJsonPropertyFilter(new PropertyFilter() { @Override public boolean apply(Object arg0, String arg1, Object arg2) { // 过滤掉对象里的包含自己的属性(自己关联自己) if (arg1.equals("wareTypes") || arg1.equals("skillS&

php – 通过curl从url获取JSON数据

我试图通过curl连接从URL获取JSON数据.当我打开链接时:它显示{“version”:“N / A”,“success”:true,“status”:true}.现在,我希望获得以上内容. 到目前为止我使用了这个: $loginUrl = 'http://update.protect-website.com/index.php?plugin=firewall&action=getVersion'; $ch = curl_init(); curl_setopt($ch, CURLOPT_SS

jquery的ajax和getJson跨域获取json数据

原文:http://www.cnblogs.com/yqskj/archive/2013/06/12/3133247.html 很多开发人员在使用jquery在前端和服务器端进行数据交互,所以很容易会认为在前端利用jquery就可以读取任何站点的数据了.近日在进行开 发时,因为要和第三方公司的一个项目进行数据的共享,因为考虑多不占用服务器的资源,遂决定直接在html进行数据的读取,不走服务器端进行中转了.然后 正好就遇到了浏览器端跨域访问的问题. 跨域的安全限制都是指浏览器端来说的,服务器端不存

【转载1】jquery的ajax和getJson跨域获取json数据

目前浏览器端跨域访问常用的两种方法有两种: 1.通过jQuery的ajax进行跨域,这其实是采用的jsonp的方式来实现的. jsonp是英文json with padding的缩写.它允许在服务器端生成script tags至返回至客户端,也就是动态生成javascript标签,通过javascript callback的形式实现数据读取. html代码: 1 $(function(){ 2 3 $("#ww").click(function(){ 4 5 $.ajax({ 6 ty

jquery 获取并解析哈工大ltp-cloud返回的json数据

ltp-cloud是一款功能强大的基于云服务平台的中文处理工具,该服务调用简单,返回结果格式多样,这里以jquery+json为例来说明.官方在github也提供了一份简单的使用示例,但是它只是获取了json格式的字符串,并没有对json数据进行解析.本文弥补了这一不足.具体代码如下: 注:本例以获取词性标注为例,您可以根据自己的需要调整调用ltp的url,相应地success方法中的解析代码也要做调整 <html> <head> <meta charset="UT

ajax取json数据——简单的

json数据:json4.json <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <table> <tbody id="tbody1"></tbody> </table> </body> &l

基于nodejs模拟浏览器post请求爬取json数据

今天想爬取某网站的后台传来的数据,中间遇到了很多阻碍,花了2个小时才请求到数据,所以我在此总结了一些经验. 首先,放上我所爬取的请求地址http://api.chuchujie.com/api/?v=1.0: 下面我们开始爬取数据. 一.写一个基于nodejs的爬虫 1.引入所需模块 这里需要引入http模块(nodejs用来向浏览器发送http请求的模块)和querystring模块(把前台传过来的对象形式的参数转化成字符串形式): var http = require("http"

js取json数据笔记

var jsondate={"con":[{"name":"hello","sex":"M"},{"name":"world","sex":"W"},{"name":"helloworld" ,"age":"20"}],"con1"