jquery中load方法的用法及注意事项说明


Posted in Javascript onFebruary 22, 2014

调用load方法的完整格式是:load( url, [data], [callback] ),其中
url:是指要导入文件的地址。
data:可选参数;因为Load不仅仅可以导入静态的html文件,还可以导入动态脚本,例如PHP文件,所以要导入的是动态文件时,我们可以把要传递的参数放在这里。
callback:可选参数;是指调用load方法并得到服务器响应后,再执行的另外一个函数。

一:如何使用data
1.加载一个php文件,该php文件不含传递参数
$("#myID").load("test.php");
//在id为#myID的元素里导入test.php运行后的结果

2. 加载一个php文件,该php文件含有一个传递参数
$("#myID").load("test.php",{"name" : "Adam"});
//导入的php文件含有一个传递参数,类似于:test.php?name=Adam

3. 加载一个php文件,该php文件含有多个传递参数。注:参数间用逗号分隔
$("#myID").load("test.php",{"name" : "Adam" ,"site":"61dh.com"});
//导入的php文件含有一个传递参数,类似于:test.php?name=Adam&site=61dh.com

4. 加载一个php文件,该php文件以数组作为传递参数
$("#myID").load("test.php",{'myinfo[]', ["Adam", "61dh.com"]});
//导入的php文件含有一个数组传递参数。
注意:使用load,这些参数是以POST的方式传递的,因此在test.php里,不能用GET来获取参数。

二:如何使用callback
比如我们要在load方法得到服务器响应后,慢慢地显示加载的内容,就可以使用callback函数。

代码如下:

$("#go").click(function(){ 
$("#myID").load("welcome.php", {"lname" : "Cai", "fname" : "Adam", function(){ 
$("#myID").fadeIn('slow');} 
); 
});

防止jquery使用缓存的方法:
缓存这东西,在一定程度上加快了页面的装载,但是也常常给我们带来麻烦。我在上篇文章里简单介绍了jQuery中Load方法的使用。在实际运用中,我们可能会碰到浏览器缓存的问题。比如我就在IE7里碰到这个问题。

jQuery Load样本代码:

$(document).ready(function(){ 
$("#labels").load("/blog/categories/labels.html"); 
//在页面装载时,在ID为#labels的DOM元素里插入labels.html的内容。 
});

当我更新了labels.html以后,在IE7里load方法仍旧在使用旧的labels.html,就算我按刷新键也不管用。好在jQuery提供一个防止ajax使用缓存的方法,把下面的语句加在head的javascript文件里,就可以解决问题。
$.ajaxSetup ({ 
cache: false //关闭AJAX相应的缓存 
});

此外我再介绍几种方法解决缓存的方法。注意:我没有在jQuery load的问题上测试过,这些方法仅供参考!

1.更改文件名,比如把labels.html改成lables_new.html,但是这是没有办法的办法,一般没有人这么做。

2.在labels.html后加上特定时间,比如lables.html?20081116。在实际工作中,在我更新css/javascript文件后,我都是用这种办法来防止文件被缓存。

3.在labels.html文件的顶部加入以下声明:
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">

4.load函数不仅可以调用HTML,也可以调用script,比如labels.php,可以在php文件里使用header函数:

<?php 
header("Cache-Control: no-cache, must-revalidate"); 
?>

load的特殊用法:
在load的url里加上空格后面就可以跟选择器了。
举例:我需要load test.html的内容,并只要取id为a的内容。
$("body").load("test.html #a");
Javascript 相关文章推荐
javascript倒计时功能实现代码
Jun 07 Javascript
JavaScript 参数中的数组展开 [译]
Sep 21 Javascript
AngularJS入门教程之Hello World!
Dec 06 Javascript
jQuery制作可自定义大小的拼图游戏
Mar 30 Javascript
基于Jquery和html5的7款个性化地图插件
Nov 17 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
Dec 27 Javascript
Cookies 和 Session的详解及区别
Apr 21 Javascript
在Js页面通过POST传递参数跳转到新页面详解
Aug 25 Javascript
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
Oct 12 Javascript
解决betterScroll在vue中存在图片时,出现拉不动的问题
Sep 27 Javascript
Vue 权限控制的两种方法(路由验证)
Aug 16 Javascript
基于JavaScript实现表格隔行换色
May 08 Javascript
页面加载完成后再执行JS的jquery写法以及区别说明
Feb 22 #Javascript
解决用jquery load加载页面到div时,不执行页面js的问题
Feb 22 #Javascript
文本框水印提示效果的简单实现代码
Feb 22 #Javascript
jquery实现省市select下拉框的替换(示例代码)
Feb 22 #Javascript
jQuery实现下拉框左右选择的简单实例
Feb 22 #Javascript
jquery取消选择select下拉框示例代码
Feb 22 #Javascript
指定区域的图片自动按比例缩小的js代码(防止页面被图片撑破)
Feb 21 #Javascript
You might like
PHP程序员编程注意事项
2008/04/10 PHP
PHP5中使用DOM控制XML实现代码
2010/05/07 PHP
使用JSON实现数据的跨域传输的php代码
2011/12/20 PHP
php返回json数据函数实例
2014/10/09 PHP
php两点地理坐标距离的计算方法
2018/12/29 PHP
Laravel5.1 框架响应基本用法实例分析
2020/01/04 PHP
Aster vs KG BO3 第一场2.18
2021/03/10 DOTA
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
jquery实现隐藏在左侧的弹性弹出菜单效果
2015/09/18 Javascript
jQuery实现悬浮在右上角的网页客服效果代码
2015/10/24 Javascript
Node.js的环境安装配置(使用nvm方式)
2016/10/11 Javascript
angular ng-repeat数组中的数组实例
2017/02/18 Javascript
MvcPager分页控件 适用于Bootstrap
2017/06/03 Javascript
详解js几个绕不开的事件兼容写法
2017/08/30 Javascript
使用node.js实现微信小程序实时聊天功能
2018/08/13 Javascript
微信小程序模板消息限制实现无限制主动推送的示例代码
2019/08/27 Javascript
vue循环数组改变点击文字的颜色
2019/10/14 Javascript
JS实现小米轮播图
2020/09/21 Javascript
[18:20]DOTA2 HEROS教学视频教你分分钟做大人-昆卡
2014/06/11 DOTA
详解在Python的Django框架中创建模板库的方法
2015/07/20 Python
Python OpenCV处理图像之图像像素点操作
2018/07/10 Python
使用pytorch进行图像的顺序读取方法
2018/07/27 Python
Python操作redis实例小结【String、Hash、List、Set等】
2019/05/16 Python
python 实现线程之间的通信示例
2020/02/14 Python
用CSS3实现瀑布流布局的示例代码
2017/11/10 HTML / CSS
Java面试题汇总
2015/12/06 面试题
商务英语专业自荐信
2013/10/14 职场文书
项目合作计划书
2014/01/09 职场文书
单位成立周年感言
2014/01/26 职场文书
教师个人剖析材料
2014/02/05 职场文书
网站美工岗位职责
2014/04/02 职场文书
租车协议书范本
2014/04/22 职场文书
大学生心理活动总结
2014/07/04 职场文书
2014最新离职证明范本
2014/09/12 职场文书
公司股东出资证明书
2014/11/01 职场文书
VUE解决跨域问题Access to XMLHttpRequest at
2022/05/06 Vue.js