使用jquery ajax可以方便地實現(xiàn)頁面的異步請求,同時也可以用來判斷用戶是否需要跳轉(zhuǎn)到其他頁面。
在使用jquery ajax時,我們可以設(shè)置回調(diào)函數(shù),當(dāng)請求成功時,回調(diào)函數(shù)就會被觸發(fā)。在回調(diào)函數(shù)內(nèi)可以設(shè)置條件判斷,來決定是否跳轉(zhuǎn)。
$.ajax({ type: "POST", url: "example.php", data: { name: "John", location: "Boston" }, success: function(data) { //成功返回時執(zhí)行的代碼 if(data == 'success'){ window.location.href = 'success.html'; }else{ alert('請求失敗'); } } });
在上面的例子中,如果我們請求成功,并且服務(wù)器返回的數(shù)據(jù)是“success”,那么頁面會自動跳轉(zhuǎn)到“success.html”頁面。如果服務(wù)器返回了其他的數(shù)據(jù),那么會彈出一個提示框,告訴用戶請求失敗。
除了判斷服務(wù)器返回的數(shù)據(jù)外,我們也可以在回調(diào)函數(shù)內(nèi)判斷其他的條件來決定是否跳轉(zhuǎn)。
$.ajax({ type: "POST", url: "example.php", data: { name: "John", location: "Boston" }, success: function(data) { //成功返回時執(zhí)行的代碼 if(data == 'success' && $('#checkbox').is(':checked')){ window.location.href = 'success.html'; }else{ alert('請求失敗'); } } });
在上面的例子中,我們除了判斷服務(wù)器返回的數(shù)據(jù)為“success”外,還判斷了一個條件,即判斷ID為“checkbox”的復(fù)選框是否被勾選。只有當(dāng)服務(wù)器返回的數(shù)據(jù)為“success”且復(fù)選框被勾選時,頁面才會跳轉(zhuǎn)到“success.html”頁面。