yeyuan 发表于 2013-2-7 00:14:53

JQuery load()函数

通常load()函数一般用于获取服务器上的静态文件

格式:load(url [,data] [,callback])

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

Ex1:获取网页或者网页中的指定数据
<html><head><title>Jquery Demo</title></head><body><div id="message"></div><input type="button" id="btnload" value="Load" /></body></html>
$(function (){    $('#btnload').click(function(){      $('#message').load('aa.html');//这个的意思是载入aa.html文件      $('#message').load('aa.html p')//这个意思是载入aa.html文件中的p段落依次类推,这个p可以是一个class也可是一个id,这样可以在指定的网页中筛选数据!    });});

Ex2:传递参数
$(function (){    $('#btnload').click(function(){      $('#message').load('test.php',function(){               //在网上查到的资料,在无参数的情况下是GET方式提交的      });      $('#message').load('test.php',{name:"lxx"},function(){            //而有参数的情况下是POST的提交的,我测试了下,确实是这样,            //这个传递类似于test.php?name=lxx但是是post的方式的      });    });});

Ex3:回调参数
$(function (){    $('#btnload').click(function(){      $('#message').load('test.php',function(responseText,textStatus,XMLHttpRequest){               //这个在网上没有找到相关的demo,也不知道该杂用,暂时搁置      });         });});
最后,在网上查到了一些说这个load函数有一个不好的地方是会生成缓存,这样当你的载入的文件有改动时,它不会即时的去显示
不过有三种方法:
1.如果是html文件的话
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">   <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">   <META HTTP-EQUIV="Expires" CONTENT="0">
如果是php文件,则加入
<?phpheader("Cache-Control: no-cache, must-revalidate");?>
2.
$.ajaxSetup ({    cache: false //关闭AJAX相应的缓存});
3.改文件名,改成其它的文件名,这样会重新的去读!
页: [1]
查看完整版本: JQuery load()函数