背景:因为最近需要获取本地的数据件进行项目测试,需要用到JQuery实现数据文件的读取,但是由于对JQuery内的获取文件方式不太了解,这次趁着机会进行一下总结。因为该总结是本人根据平常的使用及网上的资料的来的。可能有些不足,希望大家能够帮忙指证。

一。$.get();

  语法:$.get(url,[data],[callback])

  参数说明:url为请求地址。(string类型)

       data为请求数据的列表,可选参数。发送至服务器的key/value数据会作为QueryString附加到请求URL中。(object类型)

       callback为请求成功后的回调函数,该函数接受两个参数,第一个为服务器返回的数据,第二个参数为服务器的状态,是可选参数。(function类型)

       而其中,服务器返回数据的格式其实是字符串形式,并不是我们想要的json数据格式。

  列:

二。$.post(); 

  语法:$.post(url,[data],[callback],[type])

  参数说明:该函数的用法与$.get()的用法比较相像,不同的地方是多了一个type参数(可选)。该参数为请求的数据的类型,该参数可设置为html,xml,php等类型。我们可以根据所需要的数据类型来进行设置,如果我们设置该参数为:json,则数据返回的格式为JSON格式。如果没有设置,则数据格式与$.get()返回的数据格式相同,为字符串形式。(如果type设置为JSON,则要确保数据文件符合JSON数据格式,否则会报错)。

   列:

    

三。$.ajax();

  语法:$.ajax(options)

  参数说明:$.ajax()是jquery中通用的一个ajax封装,其中options是一个object类型,它指明了本次ajax调用的具体参数,可以根据具体的使用要求,对ajax进行更加精细的操作。

  列:

          

    总结:根据上面的列子可以得出,无论是get请求还是post请求,都可以用ajax来表示。

    简单说一下get与post的区别:

    1.安全性:get是通过http协议的header发送请求,所以会将参数拼接在地址栏中,所以安全性很差;

    post是通过http协议的body发送请求,地址栏中并不会出现,所以相对安全;

    还有一点,用get方法发送请求会被客户端浏览器缓存,通过查看历史记录可以查看到用户信息,所以非常不安全。

    2.传送大小:get只能传送2kb,而post一般不受限制

    3.效率:get效率高,post效率低

    4.get就是为了从服务器得到数据,而post则是发送数据

四。$.getJSON()  

  语法:getJSON(url,[data],[callback])

  参数说明:

  url:string类型, 发送请求地址 。

  data :可选参数, 待发送 Key/value 参数 ,同get,post类型的data 。

  callback :可选参数,载入成功时回调函数,同get,post类型的callback。

  注:getJSON()和get是一样的,都是get请求,这就决定了,发送的data数据量不能太多,否则造成url太长接收失败(getJSON方式是不可能有post方式递交的)。

  区别是,getJSON专门请求json数据的,而且getJSON可以实现跨域请求。

  什么是JSON?

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

  列:

  

 五。load();

  语法:$(selector).load(URL,data,callback);

  jQuery load() 方法是简单但强大的 AJAX 方法。load() 方法从服务器加载数据,并把返回的数据放入被选元素中。

  参数说明:

    必需的 URL 参数规定您希望加载的 URL。

    可选的 data 参数规定与请求一同发送的查询字符串键/值对集合。

    可选的 callback 参数是 load() 方法完成后所执行的函数名称。

  可选的 callback 参数规定当 load() 方法完成后所要允许的回调函数。回调函数可以设置不同的参数:

    responseTxt - 包含调用成功时的结果内容

    statusTXT - 包含调用的状态

    xhr - 包含 XMLHttpRequest 对象

  

JQuery中常用的$.get(),$.post(),$.ajax(),$.getJSON(),load()的详解与区别的更多相关文章

  1. SQL中常用的字符串LEFT函数和RIGHT函数详解!

    今天继续整理日常可能经常遇到的一些处理字符串的函数,记得点赞收藏!以备不时之需!看到最后有惊喜! LEFT(expression, length)函数 解析:从提供的字符串的左侧开始提取给定长度的字符 ...

  2. 浅析jQuery中常用的元素查找方法总结

    本篇文章是对jQuery中常用的元素查找方法进行了详细的总结和介绍,需要的朋友参考下   $("#myELement") 选择id值等于myElement的元素,id值不能重复在文 ...

  3. jQuery中常用的函数方法

    jQuery中常用的函数方法总结 Ajax处理 load(url,[data],[callback]) url (String) : 待装入 HTML 网页网址. data (Map) : (可选) ...

  4. [转]js中几种实用的跨域方法原理详解

    转自:js中几种实用的跨域方法原理详解 - 无双 - 博客园 // // 这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同 ...

  5. jQuery对html元素的取值与赋值实例详解

    jQuery对html元素的取值与赋值实例详解 转载  2015-12-18   作者:欢欢   我要评论 这篇文章主要介绍了jQuery对html元素的取值与赋值,较为详细的分析了jQuery针对常 ...

  6. jQuery操纵DOM元素属性 attr()和removeAtrr()方法使用详解

    jQuery操纵DOM元素属性 attr()和removeAtrr()方法使用详解 jQuery中操纵元素属性的方法: attr(): 读或者写匹配元素的属性值. removeAttr(): 从匹配的 ...

  7. jQuery插件开发的两种方法及$.fn.extend的详解(转)

    jQuery插件开发的两种方法及$.fn.extend的详解 jQuery插件开发分为两种:1 类级别.2 对象级别,下面为大家详细介绍下   jQuery插件开发分为两种: 1 类级别 类级别你可以 ...

  8. PHP中IP地址与整型数字互相转换详解

    这篇文章主要介绍了PHP中IP地址与整型数字互相转换详解,本文介绍了使用PHP函数ip2long与long2ip的使用,以及它们的BUG介绍,最后给出自己写的两个算法,需要的朋友可以参考下 IP转换成 ...

  9. ArcGIS中的北京54和西安80投影坐标系详解

    ArcGIS中的北京54和西安80投影坐标系详解 1.首先理解地理坐标系(Geographic coordinate system),Geographic coordinate system直译为地理 ...

随机推荐

  1. 【Codeforces 522B】Photo to Remember

    [链接] 我是链接,点我呀:) [题意] 题意 [题解] 模拟题.用set模拟下就好 [代码] import java.io.*; import java.util.*; public class M ...

  2. 模拟select控件功能

    直接上代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  3. BNUOJ 1260 Brackets Sequence

    Brackets Sequence Time Limit: 1000ms Memory Limit: 65536KB This problem will be judged on PKU. Origi ...

  4. oracle中的类似BIN$MrkCYT9eTTK+0sStMwn7+Q==$0的表的作用

    https://www.2cto.com/database/201211/166482.html https://docs.oracle.com/cd/E11882_01/server.112/e40 ...

  5. Centos7 上安装mysql遇上的问题:mysql无法正常启动

    第一次在Centos上安装mysql遇到的一些问题. 第一步就遇到问题,安装mysql-server报错没有可用包.  [解决方法] 先要安装mysql # wget http://repo.mysq ...

  6. 从尾到头打印链表——剑指Offer

    https://www.nowcoder.net/practice/d0267f7f55b3412ba93bd35cfa8e8035?tpId=13&tqId=11156&tPage= ...

  7. POJ 2104 K-th Number(区间第k大数)(平方切割,归并树,划分树)

    题目链接: http://poj.org/problem? id=2104 解题思路: 由于查询的个数m非常大.朴素的求法无法在规定时间内求解. 因此应该选用合理的方式维护数据来做到高效地查询. 假设 ...

  8. [Vue-rx] Stream an API using RxJS into a Vue.js Template

    You can map remote data directly into your Vue.js templates using RxJS. This lesson uses axios (and ...

  9. 数组方法-->map()

    map()方法: Array.map((数组元素, 数组元素的下标, 数组本身)=>{}[,thisArray]) 1.调用时在数组内部发生了一次从 0 到 length-1 的循环: 2.返回 ...

  10. Codeforces Round #273 (Div. 2)C. Table Decorations 数学

    C. Table Decorations   You have r red, g green and b blue balloons. To decorate a single table for t ...