jQuery教程 - Ajax之load()方法

jQuery教程 - Ajax之load()方法

标签: jqueryajaxxmlhttprequesthtmlcallback

2009-10-05 14:54 3700人阅读 评论(3) 收藏 举报

 分类:

jQuery(7) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

  jQuery对Ajax操作进行了封装,在jQuery中$.ajax()方法属于最底层的方法,第2层是laod()、$.get()和$.post()方法,第3层是$.getScript()和$.getJSON()方法。

  load()方法是jQuery中最为简单和常用的Ajax方法,能载入远程HTML代码并插入到DOM中。它的语法结构为:

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

  load()方法参数解释见下表:

参数名称 类 型 说  明
url String 请求HTML页面的URL地址
data(可选) Object 发送至服务器的key/value数据
callback(可选) Function 请求完成时的回调函数,无论请求成功或失败

1、 载入HTML文档

  首先创建一个名为test.html的HTML文件,为后台Ajax载入做准备。代码如下:

[xhtml] view plain copy

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. <title>Insert title here</title>
  6. </head>
  7. <body>
  8. <div class="comment">
  9. 已有评论:
  10. </div>
  11. <div class="comment">
  12. <h6>张三:</h6>
  13. <p class="para">沙发。</p>
  14. </div>
  15. <div class="comment">
  16. <h6>李四:</h6>
  17. <p class="para">板凳。</p>
  18. </div>
  19. <div class="comment">
  20. <h6>王五:</h6>
  21. <p class="para">地板。</p>
  22. </div>
  23. </body>
  24. </html>

  然后新建一个空白页面,在上面添加两个元素:<button>按钮用来触发Ajax事件,id为“resText”的元素用来显示追加的HTML内容。接下来就是编写jQuery代码了。等DOM元素加载完毕,通过单击id为“send”的按钮来调用laod()方法,然后将test.html的内容加载到id为“resText”的元素里。那么代码如下:

[xhtml] view plain copy

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. <title>Insert title here</title>
  6. <mce:script type="text/<a href="http://lib.csdn.net/base/javascript" class=‘replace_word‘ title="JavaScript知识库" target=‘_blank‘ style=‘color:#df3434; font-weight:bold;‘>JavaScript</a>" src="/jquery-1.3.2.js" mce_src="jquery-1.3.2.js"></mce:script>
  7. </head>
  8. <body>
  9. <input type="button" id="send" value="Ajax获取" />
  10. <div id="resText"></div>
  11. <mce:script type="text/javascript"><!--
  12. $(document).ready(function(){
  13. $("#send").click(function(){
  14. $("#resText").load("test.html");
  15. });
  16. });
  17. // --></mce:script>
  18. </body>
  19. </html>

  当按钮被单击后,出现如下图的界面:

  

  显然,load()方法完成了原本很繁琐的工作。开发人员只需要使用jQuery选择器为HTML片段指定目标位置,然后将要加载的文件的URL作为参数传递给load()方法即可。

2、 筛选载入的HTML文档

  上个例子是将test.html页面的内容都加载到id为“resText”的元素里。如果只需要加载test.html页面内的某些元素,那么可以使用load()方法的URL参数来达到目的。通过为URL参数指定选择符,可以很方便地从加载过来的HTML文档里筛选出所需要的内容。

  load()方法的URL参数的语法结构为:“url selector”。注意,URL和选择器之间有一个空格。

  例如只需要加载test.html页面中class为“para”的内容,可以使用以下代码来完成:

  $("#resText").load("test.html .para");

  运行效果则如下图:

  

3、 传递方式

  load()方法的传递方式根据参数data来自动指定。如果没有参数传递,则采用GET方式传递;反之,则自动转换为POST方式。

//无参数传递,则是GET方式
$("#resText").load("test.php",function(){
    //......
});
//有参数传递,则是POST方式
$("#resText").load("test.php",{name:"xht555",age:"24"},function(){
    //......
});

4、 回调参数

  对于必须在加载完成后才能继续的操作,load()方法提供了回调函数(callback),该函数有三个参数,分别代表请求返回的内容、请求状态和XMLHttpRequest对象,jQuery代码如下:

$("#resText").load("test.html",function(responseText,textStatus,XMLHttpRequest){
    //responseText:请求返回的内容
    //textStatus:请求状态:success、error、notmodified、timeout这4种
    //XMLHttpRequest:XMLHttpRequest对象
});

时间: 2024-10-22 14:29:10

jQuery教程 - Ajax之load()方法的相关文章

IE浏览器中,JQuery EasyUI的form(&#39;load&#39;)方法只能加载一次的问题

项目中的页面用到了EasyUI,表单加载数据时,调用了form('load')方法.用Chrome.Firefox访问均没问题,可是用IE浏览器访问时,数据不论怎么修改,加载的都是第一次的数据.这疑似是一直在加载第一次的缓存.于是查资料发现,原来IE浏览器对Jquery EasyUI的支持不好,缓存了表单第一次加载的数据.以后每次加载时,都会从缓存中调用.于是在ajax方法中加入cache:false,取消缓存便解决了. 1 $.ajax({ 2 cache:false, //取消缓存 3 ur

Ajax的load方法演示

load方法的参数形式为: load(url,[data],[callback]); 其中url为请求HTML页面的URL地址.[data]表示发送至服务器的key/value数据.callback表示请求完成时的回调函数,无论请求成功或者失败. 下面的实例就演示了关于Ajax的load方法来请求另一个页面的内容. 1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" 2 "http://www.w3.org/TR/ht

黑马day18 jquery高级特性&amp;Ajax的load方法

介绍jquery中的load方法: (1).前面没有jquery.修饰,可以推断出他是一个普通的非全局函数(也就是说是一个局部函数):$.,$().,jquery.等修饰的就是全局函数,没有这些修饰的就是局部函数. (2).$(expr).load(url,data,callback); url:请求路径,绝对路径或者相对路径都可以. data: 请求参数,格式必须是key/value格式(json格式) callback:回调函数.function(data,textStatus,XMLHtt

jquery 实践操作:load()方法

最近决定总结下实际项目中的 JS 相关的一些操作,因此开启此系列,记录使用过程中用到的一些实用操作问题和解决方法,给自己一份记录. jquery load方法是对jQuery.ajax()进行封装以方便我们使用的一个方法,当我们需要处理较为复杂的逻辑时候,还是需要用到jQuery.ajax()这个比较全面的方法的. load() 方法: 完整语法格式:load( url, [data], [callback] ) /*参数:url是指要导入文件的地址. data:可选参数:因为load不仅仅可以

Jquery中和ajax有关的方法

Jquery关于ajax有一系列的方法函数,单单知道$.ajax()显然是不够的,接下来我们对该系列的方法函数逐一研究下. ajaxComplete(callback).ajaxError(callback).ajaxSend(callback).ajaxStart(callback).ajaxStop(callback).ajaxSuccess(callback) 把这一套方法归到一起说,因为他们实现的功能相近,方法本身也并不复杂. 他们的作用是,为 ajax 指定全局事件的回调函数,回调函数

Asp.net中JQuery、ajax调用后台方法总结

通过上一篇文章实例的实现,整个过程当中学习到很多知识点,了解了Jquery.Ajax在asp.net中的运用,加以总结,其实原理都是一样的,理解了一种,其他的注意很少的区别就可以了.灵活运用: 1.有参数的方法调用 示例代码如下:前台jQuery代码:$(function() {  知道的一种就是ajax调后台的方法. 1.有参数的方法调用 示例代码如下: 前台jQuery代码: [plain] view plaincopyprint? <span style="font-size:18p

jquery之ajax之$.get方法的使用

jquery对ajax进行了封装,非常方便. 自己用$.get()方法写了个小demo,包括客户端和服务端. 客户端: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript" src="../js/jqu

jquery中ajax方法load get post与脚本文件如php脚本连接时,脚本怎样接受数据?

例如jquery实现ajax,用load()方法 $("div").load("gethint.php",{username:'mars'}); 则在php脚本gethint.php中用$_POST[]来接受数据,load()用post方式传送数据. 用$.get()方法时用$_GET[]接受 用$.post方法时用$_POST接受

.NET中使用Jquery和Ajax(三) - load加载

首先创建两个webform页面,一个命名为Default.aspx,用来显示load结果. 一个为Ajax.aspx,用来被load. 比如我们在Ajax.aspx中随便输入一些文字或者其他,Work hard, Enjoy life~ . 然后在Defaut.aspx中 引入Jquery 然后就可以开始我们的AJax load了.. 先在页面中插入一个botton 和两个DIV ,bottom用来触发load事件,DIV分别来载入load页面 和返回load结果. <input type=&quo