zl程序教程

您现在的位置是:首页 >  前端

当前栏目

jquery的ajax请求全面了解

jQueryAJAX 了解 请求 全面
2023-06-13 09:14:48 时间

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

比如
.ajaxComplete()——请求完成时
.ajaxError()——请求失败时
.ajaxSend()——在Ajax请求发送时附加一个function去执行
.ajaxStart()——请求开始时,
.ajaxStop()——请求结束时
.ajaxSuccess()——请求成功时
.load()——从服务端加载数据并将返回的HTML替换到选择的元素中
jQuery.post()——使用HTTPPOST请求加载服务端数据
.serialize()——将form元素集编码成一个字符串以便提交
.serializeArray()——将form元素集编码成一个键值对数组
jQuery.param()——创建一个序列化的数组或对象,使得适用于一个URL查询字符串或者Ajax请求
jQuery.getScript()——从服务端加载一个js文件,然后执行它
jQuery.getJSON()——从服务端加载用JSON编码过的数据
jQuery.get()——从服务端加载数据简单说其中两点

一、.ajaxStart()和.ajaxStop()

复制代码代码如下:

<!DOCTYPEHTML>
<html>
<head>
<scripttype="text/javascript"src="test/jquery-1.7.2.min.js"></script>
<scripttype="text/javascript">
$(document).ready(function(){
$(".log1").ajaxStart(function(){
$(this).text("TriggeredajaxStarthandler.");
});
$(".log2").ajaxStop(function(){
$(this).text("TriggeredajaxStophandler.");
});
$(".trigger").click(function(){
$(".result").load("xixi.html");
});
});
</script>
</head>
<body>
<divclass="trigger">Trigger</div>
<divclass="result"></div>
<divclass="log1"></div>
<divclass="log2"></div>
</body>
</html>

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


复制代码代码如下:

$(this).text("TriggeredajaxStarthandler.");

然后

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

最后

复制代码代码如下:
$(this).text("TriggeredajaxStophandler.");

二、.ajaxSend()、.ajaxComplete()、.ajaxSuccess()以及.ajaxError()复制代码代码如下:
<!DOCTYPEHTML>
<html>
<head>
<scripttype="text/javascript"src="test/jquery-1.7.2.min.js"></script>
<scripttype="text/javascript">
$(document).ready(function(){
$(".log1").ajaxStart(function(){
$(this).text("TriggeredajaxStarthandler.");//【1】
});
$(".log2").ajaxStop(function(){
$(this).text("TriggeredajaxStarthandler.");//【5】
});
$(".result").ajaxSend(function(){
$(this).text("TriggeredajaxSendhandler.");//【2】
});
$(".result").ajaxComplete(function(){
$(this).text("TriggeredajaxCompletehandler.");//【4】
});
$(".result").ajaxSuccess(function(){
$(this).text("TriggeredajaxSuccesshandler.");//【3】
});
$(".result").ajaxError(function(){
$(this).text("TriggeredajaxErrorhandler.");
});
$(".trigger").click(function(){
$(".result").load("xixi.html");
});
});
</script>
</head>
<body>
<divclass="trigger">Trigger</div>
<divclass="result"></div>
<divclass="log1"></div>
<divclass="log2"></div>
</body>
</html>

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

执行顺序代码中已经标出

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

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

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