一种Javascript解释ajax返回的json的好方法(推荐)

通常ajax请求返回的格式为json或者xml,如果返回的是json,则可以通过转换成javascript对象进行操作,如下:

1、ajax请求的controller实现

@RequestMapping
public void getLocations(@RequestParam String location, PrintWriter printWriter) {
  if (StringUtils.isEmpty(location)) {
    return;
  }
  List<Location> locations = locationService.getSubLocation(location);
  String json = Json.toJson(locations);
  printWriter.write(json);
  printWriter.flush();
  printWriter.close();
}

Location是包含多个属性的Bean,如pName、zName。

2、ajax处理请求与返回值

$.ajax({
  type : "GET",
  url : "/admin/location/getLocations.do",
  data : "location=" + val,
  success : function(msg) {
    msg = eval(msg);
    region = $("#region");
    region.empty();
    vHtml = "<option value='none'>选择区(可选)</option>";
    $.each(msg, function(i) {
      var $bean = msg[i];
      vHtml += '<option value="' + $bean.pName + '"">'
          + $bean.zName + '</option>';
    });
    region.html(vHtml);
  }
});

msg本来是一个json字符串,使用eval函数将字符串转成了javascript对象,从而可以像对象那样获取属性值了。

以上这篇一种Javascript解释ajax返回的json的好方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 深入浅析Jsonp解决ajax跨域问题

    一.介绍 最近跨域问题比较多,而且自己刚好也看到这一块,就总结了一下,关于JSONP的东西百度的话东西确实很多,很多人都是复制别人的,如此下去,其实找的资料就那么几份,关键是我还看不懂,可能是能力问题吧,自己经过很多尝试,所以总结了一下,终究还是弄懂了皮毛.注意一点是,这里是用Jsonp解决ajax的跨域问题,具体的实现其实不是ajax. 1.同源策略 浏览器有一个很重要的概念--同源策略(Same-Origin Policy).所谓同源是指,域名,协议,端口相同.不同源的客户端脚本(JavaS

  • 比较Ajax的三种实现及JSON解析

    本文主要是比较三种实现Ajax的方式,为以后的学习开个头. 准备: 1.  prototype.js 2.  jquery1.3.2.min.js 3.  json2.js 后台处理程序(Servlet),访问路径servlet/testAjax: Java代码 package ajax.servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; i

  • Ajax的jsonp方式跨域获取数据的简单实例

    jsonp的调用,今天碰到了,正好整理了一下. <!DOCTYPE html> <html> <head> <script src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#b

  • 浅析JSONP解决Ajax跨域访问问题的思路详解

    前几天,工作上有一新需求,需要前端web页面异步调用后台的Webservice方法返回信息.实现方法有多种,本例采用jQuery+Ajax,完成后,在本地调试了一切ok,但是部署到服务器上以后就出现问题了,后台服务调用没有响应,怎么回事?代码没怎么改动,唯一修改的地方就是jQuery的ajax方法中的url地址.难道是这里的问题,经过检查和调试,发现原来是同源策略在作怪,我们知道,JavaScript或jQuery是在Web前端开发中经常使用的动态脚本技术.在JavaScript中,有一个很重要

  • 一种Javascript解释ajax返回的json的好方法(推荐)

    通常ajax请求返回的格式为json或者xml,如果返回的是json,则可以通过转换成javascript对象进行操作,如下: 1.ajax请求的controller实现 @RequestMapping public void getLocations(@RequestParam String location, PrintWriter printWriter) { if (StringUtils.isEmpty(location)) { return; } List<Location> lo

  • javascript解析ajax返回的xml和json格式数据实例详解

    本文实例讲述了javascript解析ajax返回的xml和json格式数据.分享给大家供大家参考,具体如下: 写个例子,以备后用 一.JavaScript 解析返回的xml格式的数据: 1.javascript版本的ajax发送请求 (1).创建XMLHttpRequest对象,这个对象就是ajax请求的核心,是ajax请求和响应的信息载体,单是不同浏览器创建方式不同 (2).请求路径 (3).使用open方法绑定发送请求 (4).使用send() 方法发送请求 (5).获取服务器返回的字符串

  • ajax处理返回的json格式数据方法

    以用户注册为例: register.php <html> <head> <title>用户注册</title> <meta http-equiv="content-type" content="text/html;charset=utf-8"/> <script type="text/javascript"> //创建ajax引擎 function getXmlHttpObj

  • PHP封装返回Ajax字符串和JSON数组的方法

    实例如下: <?php class DBDA { public $host="localhost"; public $uid = "root"; public $pwd = "123"; public $dbname = "mydb"; //成员方法 public function Query($sql,$type=1) { $db = new MySQLi($this->host,$this->uid,$t

  • Ajax返回的json遍历取值并显示到前台的方法

    使用$.each(data,function(i,n){}); 可以用n.字段,取到想要的值. $.ajax({ type: 'post', url: '/XXX', dataType: 'json', success:function(data){ var item; $.each(data,function(i,result){ item= "<tr><td>"+result['name']+"</td><td>"

  • JSP+jquery使用ajax方式调用json的实现方法

    本文实例讲述了JSP+jquery使用ajax方式调用json的实现方法.分享给大家供大家参考,具体如下: 前台: <script type="text/javascript" src="jquery-1.5.1.min.js"></script> <script type="text/javascript"> //test function test(uid) { if(confirm("确定该用户

  • JavaScript实现函数返回多个值的方法

    本文实例讲述了JavaScript实现函数返回多个值的方法.分享给大家供大家参考.具体分析如下: 这里用字典类型返回多个值 //One var mValues= function(){ var a ="a"; var b = "b"; return [a, b]; }; var values= mValues(); var valOne= values[0]; var valTwo = values[1]; //Two var mValues= function()

  • Nodejs访问网络并解析返回的json的实现方法

    目录 一:解析本地Json文件 二:访问网络 一:解析本地Json文件 sample.json { "api": "mtop.common.getTimestamp", "v": "*", "ret": [ "SUCCESS::接口调用成功" ], "data": { "t": "1647006040138" } } jsonP

  • javascript判断图片是否加载完成的方法推荐

    load事件 <script type="text/javascript"> $('img').onload = function() { //code } </script> 优点:简单易用,不影响HTML代码. 缺点:只能指定一个元素,javascipt代码必须置于图片元素的下方 jquery方法 <script type="text/javascript"> $(function(){ $('.pic1').each(fun

  • form表单转Json提交的方法(推荐)

    先将表单数值转换成数组存储,存储成的格式为[{"name":"","value":""},.....}] var formArray = $("#form").serializeArray(); 将formArray转换成Json格式 function arrayToJson(formArray){ var dataArray = {}; $.each(formArray,function(){ if(da

随机推荐