একটি অ্যাজাক্স error
ফাংশনে প্রয়োজনীয় প্যারামিটারগুলি হ'ল jqXHR, exception
এবং আপনি নীচের মত এটি ব্যবহার করতে পারেন:
$.ajax({
url: 'some_unknown_page.html',
success: function (response) {
$('#post').html(response.responseText);
},
error: function (jqXHR, exception) {
var msg = '';
if (jqXHR.status === 0) {
msg = 'Not connect.\n Verify Network.';
} else if (jqXHR.status == 404) {
msg = 'Requested page not found. [404]';
} else if (jqXHR.status == 500) {
msg = 'Internal Server Error [500].';
} else if (exception === 'parsererror') {
msg = 'Requested JSON parse failed.';
} else if (exception === 'timeout') {
msg = 'Time out error.';
} else if (exception === 'abort') {
msg = 'Ajax request aborted.';
} else {
msg = 'Uncaught Error.\n' + jqXHR.responseText;
}
$('#post').html(msg);
},
});
ডেমো FIDDLE
পরামিতি
jqXHR:
এটি আসলে একটি ত্রুটিযুক্ত বস্তু যা দেখতে এটির মতো দেখাচ্ছে
আপনি নিজের ব্রাউজার কনসোলে এগুলি যেমন ফাংশনটির console.log
অভ্যন্তরে ব্যবহার করে তা error
দেখতে পারেন:
error: function (jqXHR, exception) {
console.log(jqXHR);
// Your error handling logic here..
}
আমরা status
এই বস্তুটি থেকে ত্রুটি কোডটি পেতে সম্পত্তিটি ব্যবহার করছি, যেমন যদি আমরা স্থিতি পাই = ৪০৪ এর অর্থ এই যে অনুরোধ করা পৃষ্ঠাটি পাওয়া যায়নি। এটি মোটেই বিদ্যমান নেই। সেই স্থিতির কোডের ভিত্তিতে আমরা ব্যবহারকারীদের লগইন পৃষ্ঠাতে বা আমাদের ব্যবসায়িক যুক্তির জন্য যা প্রয়োজন তা পুনর্নির্দেশ করতে পারি।
ব্যতিক্রম:
এটি স্ট্রিং ভেরিয়েবল যা ব্যতিক্রম প্রকারটি দেখায়। সুতরাং, যদি আমরা 404 ত্রুটি পেয়ে থাকি তবে exception
পাঠ্যটি কেবল 'ত্রুটি' হবে। একইভাবে, আমরা অন্যান্য ব্যতিক্রম পাঠ্য হিসাবে 'টাইমআউট', 'গর্ভপাত' পেতে পারি।
অসমর্থনের বিজ্ঞপ্তি:jqXHR.success()
, jqXHR.error()
, এবং jqXHR.complete()
callbacks jQuery এর 1.8 এ অনুমোদিত হয়। তাদের পরিণামস্বরূপ অপসারণের জন্য আপনার কোড প্রস্তুত করতে, jqXHR.done()
, jqXHR.fail()
, এবং jqXHR.always()
পরিবর্তে।
সুতরাং, আপনি jQuery 1.8 বা তার বেশি ব্যবহার করছেন সে ক্ষেত্রে আমাদের সাফল্য এবং ত্রুটির ফাংশন যুক্তি আপডেট করার প্রয়োজন হবে: -
// Assign handlers immediately after making the request,
// and remember the jqXHR object for this request
var jqxhr = $.ajax("some_unknown_page.html")
.done(function (response) {
// success logic here
$('#post').html(response.responseText);
})
.fail(function (jqXHR, exception) {
// Our error logic here
var msg = '';
if (jqXHR.status === 0) {
msg = 'Not connect.\n Verify Network.';
} else if (jqXHR.status == 404) {
msg = 'Requested page not found. [404]';
} else if (jqXHR.status == 500) {
msg = 'Internal Server Error [500].';
} else if (exception === 'parsererror') {
msg = 'Requested JSON parse failed.';
} else if (exception === 'timeout') {
msg = 'Time out error.';
} else if (exception === 'abort') {
msg = 'Ajax request aborted.';
} else {
msg = 'Uncaught Error.\n' + jqXHR.responseText;
}
$('#post').html(msg);
})
.always(function () {
alert("complete");
});
আশা করি এটা সাহায্য করবে!
dataType
নয়datatype
।