यहाँ कुछ उदाहरण दिए गए हैं जो jQuery के पुराने और नए प्रतिमानों में टाइमआउट की स्थापना और पता लगाते हैं।
Live Demo
JQuery के साथ वादा 1.8+
Promise.resolve(
$.ajax({
url: '/getData',
timeout:3000 //3 second timeout
})
).then(function(){
//do something
}).catch(function(e) {
if(e.statusText == 'timeout')
{
alert('Native Promise: Failed from timeout');
//do something. Try again perhaps?
}
});
jQuery 1.8+
$.ajax({
url: '/getData',
timeout:3000 //3 second timeout
}).done(function(){
//do something
}).fail(function(jqXHR, textStatus){
if(textStatus === 'timeout')
{
alert('Failed from timeout');
//do something. Try again perhaps?
}
});
jQuery <= 1.7.2
$.ajax({
url: '/getData',
error: function(jqXHR, textStatus){
if(textStatus === 'timeout')
{
alert('Failed from timeout');
//do something. Try again perhaps?
}
},
success: function(){
//do something
},
timeout:3000 //3 second timeout
});
ध्यान दें कि textStatus param (या jqXHR.statusText ) आपको बताएगा कि त्रुटि क्या थी। यह उपयोगी हो सकता है यदि आप जानना चाहते हैं कि विफलता एक टाइमआउट के कारण हुई थी।
त्रुटि (jqXHR, textStatus, errorThrown)
एक फ़ंक्शन जिसे अनुरोध विफल होने पर बुलाया जाता है। फ़ंक्शन को तीन तर्क मिलते हैं: jqXHR (jQuery 1.4.x, XMLHttpRequest में) ऑब्जेक्ट, एक स्ट्रिंग जो त्रुटि के प्रकार और एक वैकल्पिक अपवाद ऑब्जेक्ट का वर्णन करता है, यदि कोई हुआ। दूसरे तर्क के लिए संभावित मान (शून्य के अलावा) "टाइमआउट", "त्रुटि", "गर्भपात", और "पारसेरोर" हैं। जब कोई HTTP त्रुटि होती है, तो errorThrown HTTP स्थिति का पाठ भाग प्राप्त करता है, जैसे कि "Not Found" या "आंतरिक त्रुटि"। JQuery 1.5 के अनुसार, त्रुटि सेटिंग कार्यों की एक सरणी को स्वीकार कर सकती है। प्रत्येक फ़ंक्शन को बदले में बुलाया जाएगा। नोट: इस हैंडलर को क्रॉस-डोमेन स्क्रिप्ट और JSONP अनुरोधों के लिए नहीं कहा जाता है।
src: http://api.jquery.com/jQuery.ajax/
,
के बाद वहाँ}
।