1、jQuery.get()方法

$.get(url,data,success(response,status,xhr),dataType)

该函数是简写的 Ajax 函数,等价于:

[javascript] view plaincopy
  1. $.ajax({
  2. url: url,
  3. data: data,
  4. success: success,
  5. dataType: dataType
  6. });

根据响应的不同的 MIME 类型,传递给 success 回调函数的返回数据也有所不同,这些数据可以是 XML root 元素、文本字符串、JavaScript 文件或者 JSON 对象。也可向 success 回调函数传递响应的文本状态。

参数 描述
url 必需。规定将请求发送的哪个 URL。
data 可选。规定连同请求发送到服务器的数据。
success(response,status,xhr) 可选。规定当请求成功时运行的函数。
额外的参数:
response - 包含来自请求的结果数据
status - 包含请求的状态
xhr - 包含 XMLHttpRequest 对象
dataType 可选。规定预计的服务器响应的数据类型。
默认地,jQuery 将智能判断。
可能的类型:
"xml"
"html"
"text"
"script"
"json"
"jsonp"

使用 AJAX 的 GET 请求来改变 div 元素的文本:

[javascript] view plaincopy
  1. $("button").click(function(){
  2. $.get("demo_ajax_load.txt", function(result){
  3. $("div").html(result);
  4. });
  5. });

2、jQuery.post()方法

$.post(url,data,success(data, textStatus, jqXHR),dataType)

该函数是简写的 Ajax 函数,等价于:

[javascript] view plaincopy
  1. $.ajax({
  2. type: 'POST',
  3. url: url,
  4. data: data,
  5. success: success,
  6. dataType: dataType
  7. });

根据响应的不同的 MIME 类型,传递给 success 回调函数的返回数据也有所不同,这些数据可以是 XML 根元素、文本字符串、JavaScript 文件或者 JSON 对象。也可向 success 回调函数传递响应的文本状态。

参数 描述
url 必需。规定把请求发送到哪个 URL。
data 可选。映射或字符串值。规定连同请求发送到服务器的数据。
success(data, textStatus, jqXHR) 可选。请求成功时执行的回调函数。
dataType

可选。规定预期的服务器响应的数据类型。
默认执行智能判断(xml、json、script 或 html)。

使用 AJAX 的 GET 请求来改变 div 元素的文本:

[javascript] view plaincopy
  1. $("input").keyup(function(){
  2. txt=$("input").val();
  3. $.post("demo_ajax_gethint.asp",{suggest:txt},function(result){
  4. $("span").html(result);
  5. });
  6. });

实例:
一个简单的 POST 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。
示例代码:

Ajax.aspx:

[javascript] view plaincopy
  1. Response.ContentType = "application/json";Response.Write("{result: '" + Request["Name"] + ",你好!(这消息来自服务器)'}");

jQuery 代码:

[javascript] view plaincopy
  1. $.post("Ajax.aspx", { Action: "post", Name: "lulu" },
  2. function (data, textStatus){
  3. // data 可以是 xmlDoc, jsonObj, html, text, 等等.
  4. //this;
  5. // 这个Ajax请求的选项配置信息,请参考jQuery.get()说到的this
  6. alert(data.result);
  7. }, "json");

点击提交:
这里设置了请求的格式为"json":
$.ajax()这个是jQuery 的底层 AJAX 实现。简单易用的高层实现见 $.get, $.post 等。

3、jQuery.ajax()方法

Ajax事件参数:beforeSend ,success ,complete ,error 。我们可以定义这些事件来很好的处理我们的每一次的Ajax请求。

[javascript] view plaincopy
  1. $.ajax({
  2. url: 'stat.php',
  3. type: 'POST',
  4. data:{Name:"keyun"},
  5. dataType: 'html',
  6. timeout: 1000,
  7. error: function(){alert('Error loading PHP document');},
  8. success: function(result){alert(result);}
  9. });

$.get()与$.post()的区别:

《计算机网络》对POST和GET方法在HTTP协议中的简单解释:HTTP协议定义了通信的两种报文:请求报文和响应报文。对于请求报文来说,它的通用格式包含三个主要部分:请求行、首部行、实体主体。通常请求行的格式为:方法字段、URL字段、HTTP协议版本字段,其中方法字段就包括GET、POST方法等。
当方法字段是GET方法时内容主体为空,而是用POST方法时才使用实体主体。
HTTP客户机通常在用户提交表单时使用POST方法,这时,实体主体中所包含的就是用户在表单中的输入值。当然,GET方法也可以提交表单中的数据,它是通过将用户在表单中的输入值传送到正确的URL来实现的。这就是我们通常所看到的http://ei.hust.edu.cn?username="libis"&age=12。
可以看出,在表单提交的方式上两者存在很大的不同:
1.Post方法将表单数据填充到HTTP请求报文中的实体主体部分,使用者是看不到的。而GET方法则是将表单数据直接传送到请求行的URL字段来实现表单数据提交的。这也就决定了使用POST是相对比较安全的,而是用GET方法的安全性就很低。
除此之外,GET方法和POST方法另一个重要的区别是:
2.GET方法传送的数据量较小,一般只有2k。而POST方法传送的数据量较大,理论上没有上限。

$.ajax()需要注意的一些地方:

1.data主要方式有三种,html拼接的,json数组,form表单经serialize()序列化的;通过dataType指定,不指定智能判断。
2.$.ajax只提交form以文本方式,如果异步提交包含<file>上传是传过不过去,需要使用jquery.form.js的$.ajaxSubmit

$.ajax() 实际应用例子

[javascript] view plaincopy
  1. //1.$.ajax带json数据的异步请求
  2. var aj = $.ajax( {
  3. url:'productManager_reverseUpdate',// 跳转到 action
  4. data:{
  5. selRollBack : selRollBack,
  6. selOperatorsCode : selOperatorsCode,
  7. PROVINCECODE : PROVINCECODE,
  8. pass2 : pass2
  9. },
  10. type:'post',
  11. cache:false,
  12. dataType:'json',
  13. success:function(data) {
  14. if(data.msg =="true" ){
  15. // view("修改成功!");
  16. alert("修改成功!");
  17. window.location.reload();
  18. }else{
  19. view(data.msg);
  20. }
  21. },
  22. error : function() {
  23. // view("异常!");
  24. alert("异常!");
  25. }
  26. });
  27. //2.$.ajax序列化表格内容为字符串的异步请求
  28. function noTips(){
  29. var formParam = $("#form1").serialize();//序列化表格内容为字符串
  30. $.ajax({
  31. type:'post',
  32. url:'Notice_noTipsNotice',
  33. data:formParam,
  34. cache:false,
  35. dataType:'json',
  36. success:function(data){
  37. }
  38. });
  39. }
  40. //3.$.ajax拼接url的异步请求
  41. var yz=$.ajax({
  42. type:'post',
  43. url:'validatePwd2_checkPwd2?password2='+password2,
  44. data:{},
  45. cache:false,
  46. dataType:'json',
  47. success:function(data){
  48. if( data.msg =="false" ) //服务器返回false,就将validatePassword2的值改为pwd2Error,这是异步,需要考虑返回时间
  49. {
  50. textPassword2.html("<font color='red'>业务密码不正确!</font>");
  51. $("#validatePassword2").val("pwd2Error");
  52. checkPassword2 = false;
  53. return;
  54. }
  55. },
  56. error:function(){}
  57. });
  58. //4.$.ajax拼接data的异步请求
  59. $.ajax({
  60. url:'<%=request.getContextPath()%>/kc/kc_checkMerNameUnique.action',
  61. type:'post',
  62. data:'merName='+values,
  63. async : false, //默认为true 异步
  64. error:function(){
  65. alert('error');
  66. },
  67. success:function(data){
  68. $("#"+divs).html(data);
  69. }
  70. });

转载于:https://www.cnblogs.com/ziyoublog/p/9025197.html

jQuery中$.get()、$.post()和$.ajax()相关推荐

  1. (转)jQuery第五课:Ajax

    原文地址:http://www.cnblogs.com/yinzixin/archive/2010/05/03/1726370.html 关于ajax早已不是新鲜话题,而jQuery使ajax变得无比 ...

  2. ajax点击事件触发后台,使用jquery点击事件触发AJAX

    我有两个下拉菜单,其中一个我试图用jquery替换单选按钮.第二个盒子通过AJAX进行更新,每次用户在第一个下拉菜单中进行选择时都会有新选项.我已经成功生成单选按钮,可以更改第一个下拉列表的值,但是当 ...

  3. jq中法可以发起ajax请求的方法有,jQuery实现监控页面所有ajax请求的方法

    本文实例讲述了jQuery实现监控页面所有ajax请求的方法.分享给大家供大家参考,具体如下: 你是不是有遇到这样的问题:页面发起两个ajax请求,希望它们都成功以后,再做一个动作? 很容易想到的解决 ...

  4. jquery绑定的事件对ajax刷新出的数据不生效,on可能受jquery版本影响

    问题:jquery绑定的事件对ajax刷新出的数据不生效 方法:可以用 jquery 里面的 on 和  delegate 预绑定父元素就可以触发的. 注意:某些限制下,个人用的是jquery 1.4 ...

  5. jQueryPager(JQuery分页插件pagination实现Ajax分页)

    jQueryPager(JQuery分页插件pagination实现Ajax分页) 下载地址 jQueryPager(JQuery分页插件pagination实现Ajax分页).rar 转载于:htt ...

  6. jQuery中的$.getJSON、$.ajax、$.get、$.post的区别

    jQuery中的$.getJSON.$.ajax.$.get.$.post的区别 使用见Flask(python)异步(ajax)返回json格式数据 ①.$.getJSON $.getJSON()是 ...

  7. jQuery实现监控页面所有ajax请求的方法

    本文实例讲述了jQuery实现监控页面所有ajax请求的方法.分享给大家供大家参考,具体如下: 你是不是有遇到这样的问题:页面发起两个ajax请求,希望它们都成功以后,再做一个动作? 很容易想到的解决 ...

  8. jq 编码 php解码,jQuery编码转化base64通过AJAX上传

    这次给大家带来jQuery编码转化base64通过AJAX上传,jQuery编码转化base64通过AJAX上传的注意事项有哪些,下面就是实战案例,一起来看一下. 本文实例讲述了jQuery实现文件编 ...

  9. jq中法可以发起ajax请求的方法有,js与jQuery终止正在发送的ajax请求的方法

    本文实例讲述了js与jQuery终止正在发送的ajax请求的方法.分享给大家供大家参考,具体如下: 核心:调用XMLHttpRequest对象上的abort方法 jquery的ajax方法有自己的超时 ...

  10. 【Web前端】【jquery】jquery实战:cookie、AJAX、放大镜

    jquery实战 JQ cookie JQ AJAX $().load() $.get() $.post() JQ实战:放大镜 JQ cookie JQ cookie没有在jquery-1.10.1. ...

最新文章

  1. [转载] 七龙珠第一部——第079话 金角跟银角
  2. 如何使用YUM列出包的内容?
  3. 如何给指定地址空间拍一个快照
  4. SmartFoxServer 2X Room的加入與建立
  5. 纯CSS打造可折叠树状菜单
  6. linux下使用cat打开文件乱码
  7. vi 多窗口同步滚动--适用于人工文件比较
  8. 你不知道的数学趣闻(一)
  9. Windows删除EFI系统分区
  10. [ZOJ3213] Beautiful Meadow
  11. 视频教程-ThreeJS视频教程-JavaScript
  12. TSC打印bmp图片命令
  13. 大数据学习入门难,中科天玑给初学者支几招
  14. Linux命令之解压缩:tar、zip、rar 命令
  15. [深度学习概念]·CNN网络架构演进:从LeNet到DenseNet(代码实现基于Keras)
  16. ORA-12514 错误的处理
  17. Log4J按照不同包名输出日志
  18. 为什么要特征标准化及特征标准化方法
  19. 使用Java/Scala API对Iceberg数据湖进行snapshot快照expire过期处理
  20. 【雅思大作文考官范文】——第十八篇:“problem and solution essay”

热门文章

  1. java spring server_java server之spring中的IOC如何用java实现?
  2. c语言小学生四则运算出题_求助 设计一个小学生自助四则运算练习软件
  3. navcat定时备份mysql_MySQL——定时备份,保留最新31天的数据
  4. android开发 解析 b5,张绍文android开发高手课读书笔记4-启动优化篇
  5. easypanel安装php5.4,kangle一键脚本-凌梦云
  6. github pages markdown_赏金$25000的GitHub漏洞:通过 GitHub Pages 不安全的Kramdown配置实现多个RCE...
  7. filezilla 设置服务器_服务器ftp软件,五款服务器ftp软件的使用方法
  8. 微型计算机基本原理与应用pdf,微型计算机原理和应用.PDF
  9. C ++ stringstream –参考和使用指南
  10. jquery中each_如何在jQuery中使用each()