我想用jquery做客戶端驗證來做檢查並返回錯誤或成功。發送返回Ajax變量
我知道如何回顯text/html作爲迴應,但這是我正在嘗試做的。
On Error,發回消息,以便用戶可以重新提交表單。 成功後,重新載入頁面。
我不知道如何讓它發送一個變量,我認爲這會讓我做任何條件在jQuery中。
有什麼建議?
我想用jquery做客戶端驗證來做檢查並返回錯誤或成功。發送返回Ajax變量
我知道如何回顯text/html作爲迴應,但這是我正在嘗試做的。
On Error,發回消息,以便用戶可以重新提交表單。 成功後,重新載入頁面。
我不知道如何讓它發送一個變量,我認爲這會讓我做任何條件在jQuery中。
有什麼建議?
JavaScript的可能是這樣
$.ajax({
type: 'POST',
url: ajaxPage,
data: postContent,
success: function(response) {
//Assume that the php failed
},
error: function() { alert("Ajax request failed."); }
});
現在在阿賈克斯PHP文件的財產以後,你可以有這個
<?php
//Check for validation
if(validation == 'success') {
header('Location: '.FILE_LOCATION);
}
else {
exit('Form submit failed. Please try again');
}
?>
希望這有助於!大都會
編輯自新信息
如果你想使用一個JSON對象,你可以,如果你使用JSON或沒有做到像下面
<?php
$response = array('validationStatus' => true);
exit(json_encode($response));
?>
它不是一個真正的大問題,你仍然可以傳遞一個字符串。我認爲json對於需要傳回的更復雜的數據來說真的更好,但是可能有10種不同的方式來執行此操作。
查看文檔http://api.jquery.com/jQuery.ajax/,您會發現一個成功和錯誤選項,您可以在請求成功或失敗時提供一個函數來調用。
$.ajax({
url: 'ajax/test.html',
success: function(data) {
//reload your page
},
error: function(data) {
alert("Resubmit the form!");
}
});
你如何讓你的ajax文件去錯誤功能?我從來沒有見過這個。我認爲錯誤函數只有在連接之間發生了某些事情時(比如ajax頁面丟失/錯誤)。另外,如果連接有問題怎麼辦?用戶會認爲表單失敗,不會理解錯誤。 – Metropolis 2010-04-22 02:42:09
這就是我的想法,錯誤函數是如果ajax調用出錯,我說的錯誤是服務器端驗證。 – matthewb 2010-04-22 02:44:12
我明白了,在這種情況下,我誤解了你的問題。我會讓你發佈的頁面發回一個JSON對象,並在後端發生結果。然後我將在成功選項句柄中定義該函數,以便JSON對象確定下一步該做什麼。 – 2010-04-22 03:04:32