Saya ingin menangkap kesalahan dan menampilkan pesan yang sesuai jika permintaan Ajax gagal.
Kode saya seperti berikut ini, tetapi saya tidak dapat mengatur untuk menangkap permintaan Ajax yang gagal.
function getAjaxData(id)
{
$.post("status.ajax.php", {deviceId : id}, function(data){
var tab1;
if (data.length>0) {
tab1 = data;
}
else {
tab1 = "Error in Ajax";
}
return tab1;
});
}
Saya menemukan bahwa, "Kesalahan dalam Ajax" tidak pernah dieksekusi ketika permintaan Ajax gagal.
Bagaimana saya menangani kesalahan Ajax dan menampilkan pesan yang sesuai jika gagal?
jquery
ajax
post
error-handling
TTCG
sumber
sumber
$.ajax
lebih mudah dibaca adalah menggunakan hash untuk blog Andadata
. Misalnya:{ name : 'John', location: 'Boston' }
$.post().error()
jQuery 1.5 menambahkan objek yang ditangguhkan yang menangani ini dengan baik. Cukup panggil
$.post
dan lampirkan semua penangan yang Anda inginkan setelah panggilan. Objek yang ditangguhkan bahkan memungkinkan Anda untuk melampirkan beberapa penangan sukses dan kesalahan.Contoh:
Sebelum jQuery 1.8, fungsi
done
dipanggilsuccess
danfail
dipanggilerror
.sumber
responseJSON
properti yang juga sangat berguna dalam hal tipe ajaxjson
.sumber
sumber
Cara sederhana adalah dengan mengimplementasikan ajaxError :
Sebagai contoh:
Saya sarankan membaca dokumentasi ajaxError . Itu lebih dari kasus penggunaan sederhana yang ditunjukkan di atas - terutama panggilan baliknya menerima sejumlah parameter:
sumber
Anda harus mencatat responseText:
sumber
Anda lampirkan .onerror handler ke objek ajax, mengapa orang bersikeras memposting JQuery untuk tanggapan ketika vanila bekerja lintas platform ...
contoh kilat:
sumber