之前类似的方法用过 $.post, $.get,$.ajax,还是第一次用这个 $.getJSON。

前三个都是用作异步请求的,那么最后一个呢?其实也是异步请求的,和 $.get 最类似,因为他也是将数据放在了 url上面。

代码:

// 页面一加载就请求服务器,获取当前用户的笔记本数据
function loadPageNotebooks() {
var page = $(document).data('page');
var userId = getCookie('userId');
var url = 'notebook/page.do';
var data = {
userId : userId,
page : page
};
// 从服务器拉取数据
$.getJSON(url, data, function(result) {
console.log(result);
if (result.state == 0) {
var notebooks = result.data;
showPageNotebooks(notebooks, page);
$(document).data('page', ++page);
} else {
alert(result.message);
}
});
}

后台代码:

    /**
* 获取当前用户的全部笔记本,以json的形式响应回去
* @param userId
* @param page
* @return
*/
@RequestMapping("/page.do")
@ResponseBody
public Object page(String userId, Integer page) {
List<Map<String, Object>> list = notebookService.listNotebooks(userId, page);
return new JsonResult(list);
}

小总结:

$.getJSON() 是专门为 ajax 获取 json 数据而设置的,并且支持"跨域"调用,其语法的格式为:

getJSON( url , [data] , [callback] )

其中三个分别为:

  • url:string类型, 发送请求地址
  • data :可选参数, 待发送 Key/value 参数 ,同 get,post 类型的 data
  • callback :可选参数,载入成功时回调函数,同 get,post 类型的 callback

JSON 是一种理想的数据传输格式,它能够很好的融合与 JavaScript 或其他宿主语言,并且可以被 JS 直接使用。使用 JSON 相比传统的通过 GET、POST 直接发送“裸体”数据,在结构上更为合理,也更为安全。至于 jQuery 的 getJSON() 函数,只是设置了 JSON 参数的 ajax() 函数的一个简化版本。这个函数也是可以跨域使用的,相比 get()、post() 有一定优势。另外这个函数可以通过把请求 url 写成 "myurl?callback=X" 这种格式,让程序执行回调函数X。
注:

数据最终还是通过 url 后面通过 get 方式发送数据出去的,这就决定了,发送的 data 数据量不能太多【get方式最大4KB】,否则造成 url 太长接收失败(getJSON方式是不可能有post方式递交的)。

Jquery 中 $.getJSON的用法的更多相关文章

  1. jquery的getjson与jsonp

    仔细的学习jquery的getjson的用法. http://www.cnblogs.com/leejersey/p/3750232.html http://www.jb51.net/article/ ...

  2. [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...

  3. (转)Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    详细解读Jquery各Ajax函数: $.get(),$.post(),$.ajax(),$.getJSON() 一,$.get(url,[data],[callback]) 说明:url为请求地址, ...

  4. Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数:  ...

  5. 转载 : Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结 投稿:jingxian 字体:[增加 减小] 类型:转载 时间:2013-11-14我要评论 本文是 ...

  6. Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结【转载】

    详细解读Jquery各Ajax函数:$.get(),$.post(),$.ajax(),$.getJSON() 一,$.get(url,[data],[callback]) 说明:url为请求地址,d ...

  7. 简单理解jQuery中$.getJSON、$.get、$.post、$.ajax用法

    在WEB开发中异步请求方式普遍使用,ajax技术减少程序员的工作量,也提升用户交互体验.AJAX的四种异步请求方式都能实现基本需求,闲话不多说,直接切入正题. 1.$.getJSON $.getJSO ...

  8. jquery中$.each()的用法

    each()函数是基本上所有的框架都提供了的一个工具类函数,通过它,你可以遍历对象.数组的属性值并进行处理.jQuery和jQuery对象都实 现了该方法,对于jQuery对象,只是把each方法简单 ...

  9. jQuery中Animate进阶用法(一)

    jQuery中animate的用法你了解多少呢?如果仅仅是简单的移动位置,显示隐藏,哦!天哪你在浪费资源!因为animate太强大了,你可以有很多意想不到的用法!让我们一起研究一下吧~~ 首先要了解j ...

随机推荐

  1. [WC2011]最大XOR和路径 线性基

    [WC2011]最大XOR和路径 LG传送门 需要充分发掘经过路径的性质:首先注意不一定是简单路径,但由于统计的是异或值,重复走是不会被统计到的,考虑对于任意一条从\(1\)到\(n\)的路径的有效部 ...

  2. java四舍五入

    package com.clzhang.sample; import java.math.BigDecimal; import java.math.RoundingMode; import java. ...

  3. SpringCloud-微服务的注册与发现Eureka(二)

    一.SpringCloud简介 Spring Cloud是一系列框架的有序集合.它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线.负载均 ...

  4. java 或者 js 获取项目访问路径(域名)

    /** * 获得站点url * @return */ public String getWebUrl(){ String url = getRequest().getScheme() + " ...

  5. 《javascript语言精粹》mindmap

    最近刚刚读完<javascript语言精粹>,感觉其中的内容确实给用js作开发语言的童鞋们提了个醒——js里面坑很多啊 不过,我也并不完全认同书中所讲的所有内容,有些书中认为是糟粕的特性, ...

  6. Altium 中PCB的Gerber生产资料的输出详细步骤

    生产文件的输出,俗称Gerber out,Gerber文件是所有电路设计软件都可以产生的文件,在电子组装行业又称为模版文件(Stencil Data),在PCB制造业又称为光绘文件.可以说Gerber ...

  7. Java类型转换工具类(十六进制—bytes互转、十进制—十六进制互转,String—Double互转)

    /** * 数据类型转换工具类 * @author cyf * */ public class NumConvertUtil{ /** * bytes 转16进制字符串 * @param bArray ...

  8. Python字符串符号:双引号/单引号用法注解。

    众所周知python中单引号和双引号常常被我们所使用,例如print.input等等. 但是对于打印输出所引导的字符串大多都是用双引号的形式来做,"Hello,python!",而 ...

  9. 模块化开发之butterknife 在 library中使用

    在Android开发中butterknife是一个很好的对资源初始化的工具,它可以使你的代码简洁通俗易懂,同时配合Android ButterKnife Zelezny插件可以让你写代码的速度提升至少 ...

  10. 【厚积薄发】Crunch压缩图片的AssetBundle打包

    这是第133篇UWA技术知识分享的推送.今天我们继续为大家精选了若干和开发.优化相关的问题,建议阅读时间10分钟,认真读完必有收获. UWA 问答社区:answer.uwa4d.com UWA QQ群 ...