jquery的ajax请求全面了解

  jquery中封装了一些ajax请求的方法,很实用。

  比如

  .ajaxComplete()——请求完成时

  .ajaxError()——请求失败时

  .ajaxSend()——在Ajax请求发送时附加一个function去执行

  .ajaxStart()——请求开始时,

  .ajaxStop()——请求结束时

  .ajaxSuccess()——请求成功时

  .load()——从服务端加载数据并将返回的HTML替换到选择的元素中

  jQuery.post()——使用HTTP POST请求加载服务端数据

  .serialize()——将form元素集编码成一个字符串以便提交

  .serializeArray()——将form元素集编码成一个键值对数组

  jQuery.param()——创建一个序列化的数组或对象,使得适用于一个URL查询字符串或者Ajax请求

  jQuery.getScript()——从服务端加载一个js文件,然后执行它

  jQuery.getJSON()——从服务端加载用JSON编码过的数据

  jQuery.get()——从服务端加载数据简单说其中两点

  一、.ajaxStart()和.ajaxStop()

  

复制代码 代码如下:

  <!DOCTYPE HTML>

  <html>

  <head>

  <script type="text/javascript" src="test/jquery-1.7.2.min.js"></script>

  <script type="text/javascript">

  $(document).ready(function(){

  $('.log1').ajaxStart(function() {

  $(this).text('Triggered ajaxStart handler.');

  });

  $('.log2').ajaxStop(function() {

  $(this).text('Triggered ajaxStop handler.');

  });

  $('.trigger').click(function() {

  $('.result').load('xixi.html');

  });

  });

  </script>

  </head>

  <body>

  <div class="trigger">Trigger</div>

  <div class="result"></div>

  <div class="log1"></div>

  <div class="log2"></div>

  </body>

  </html>

  代码中class为result的元素load了一个xixi.html,此文件中的内容随便,只要存在这个文件就行。js执行方法的顺序是

  先

  

复制代码 代码如下:

  $(this).text('Triggered ajaxStart handler.');

  然后

  加载晚xixi.html里的内容到class为result的元素中

  最后

  

复制代码 代码如下:

  $(this).text('Triggered ajaxStop handler.');

二、.ajaxSend()、.ajaxComplete()、.ajaxSuccess()以及.ajaxError()
复制代码 代码如下:

  <!DOCTYPE HTML>

  <html>

  <head>

  <script type="text/javascript" src="test/jquery-1.7.2.min.js"></script>

  <script type="text/javascript">

  $(document).ready(function(){

  $('.log1').ajaxStart(function() {

  $(this).text('Triggered ajaxStart handler.');//【1】

  });

  $('.log2').ajaxStop(function() {

  $(this).text('Triggered ajaxStart handler.');//【5】

  });

  $('.result').ajaxSend(function() {

  $(this).text('Triggered ajaxSend handler.');//【2】

  });

  $('.result').ajaxComplete(function() {

  $(this).text('Triggered ajaxComplete handler.');//【4】

  });

  $('.result').ajaxSuccess(function() {

  $(this).text('Triggered ajaxSuccess handler.');//【3】

  });

  $(".result").ajaxError(function() {

  $(this).text( "Triggered ajaxError handler." );

  });

  $('.trigger').click(function() {

  $('.result').load('xixi.html');

  });

  });

  </script>

  </head>

  <body>

  <div class="trigger">Trigger</div>

  <div class="result"></div>

  <div class="log1"></div>

  <div class="log2"></div>

  </body>

  </html>

  上述代码中还是class为result的加载一个html文件。

  执行顺序代码中已经标出

  如果请求过程中出现什么错误,比如说文件不存在等,就会执行.ajaxError()中的方法而不是.ajaxSuccess()中的。

  以前总是对ajax认识很乱,现在有个全面的认识,总结一下,希望共同学习,另外请求中的方式是HTTP GET还是HTTP POST也是值得研究的。

  jquery中介绍ajax的地址ajax的使用