jquery的ajax請求全面了解
jquery中封裝了一些ajax請求的方法,很實用。
比如
.ajaxComplete()——請求完成時
.ajaxError()——請求失敗時
.ajaxSend()——在Ajax請求發(fā)送時附加一個function去執(zhí)行
.ajaxStart()——請求開始時,
.ajaxStop()——請求結束時
.ajaxSuccess()——請求成功時
.load()——從服務端加載數(shù)據(jù)并將返回的HTML替換到選擇的元素中
jQuery.post()——使用HTTP POST請求加載服務端數(shù)據(jù)
.serialize()——將form元素集編碼成一個字符串以便提交
.serializeArray()——將form元素集編碼成一個鍵值對數(shù)組
jQuery.param()——創(chuàng)建一個序列化的數(shù)組或?qū)ο?,使得適用于一個URL查詢字符串或者Ajax請求
jQuery.getScript()——從服務端加載一個js文件,然后執(zhí)行它
jQuery.getJSON()——從服務端加載用JSON編碼過的數(shù)據(jù)
jQuery.get()——從服務端加載數(shù)據(jù)簡單說其中兩點
一、.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,此文件中的內(nèi)容隨便,只要存在這個文件就行。js執(zhí)行方法的順序是
先
$(this).text('Triggered ajaxStart handler.');
然后
加載晚xixi.html里的內(nèi)容到class為result的元素中
最后
$(this).text('Triggered ajaxStop handler.');
<!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文件。
執(zhí)行順序代碼中已經(jīng)標出
如果請求過程中出現(xiàn)什么錯誤,比如說文件不存在等,就會執(zhí)行.ajaxError()中的方法而不是.ajaxSuccess()中的。
以前總是對ajax認識很亂,現(xiàn)在有個全面的認識,總結一下,希望共同學習,另外請求中的方式是HTTP GET還是HTTP POST也是值得研究的。
jquery中介紹ajax的地址ajax的使用
相關文章
淺談jQuery中 wrap() wrapAll() 與 wrapInner()的差異
本文結合W3School的文檔,分析了jQuery中 wrap() wrapAll() 與 wrapInner()的差異,并給出了圖文對比教程,非常的簡單實用,有需要的朋友可以參考下2014-11-11Validform+layer實現(xiàn)漂亮的表單驗證特效
創(chuàng)建一個JavaScript表單驗證插件,可以說是一個繁瑣的過程,涉及到初期設計、開發(fā)與測試等等環(huán)節(jié)。實際上一個優(yōu)秀的程序員不僅是技術高手,也應該是善假于外物的。本文就給大家結合2款優(yōu)秀的插件來實現(xiàn)這個問題,有需要的小伙伴可以參考下2016-01-01html中的input標簽的checked屬性jquery判斷代碼
input 標簽具有checked屬性,而當input標簽的type屬性設為button時,如果給input標簽的checked屬性賦值時,在vs中會報錯,提示 特性checked不是元素input的有效特性2012-09-09