दिलचस्प पोस्ट
उद्देश्य-सी के लिए प्रलेखन जनरेटर? कैसे बनाएँ या NHibernate के लिए बयान? जावास्क्रिप्ट – ऑनक्लिक इवेंट को स्वचालित रूप से कहा जा रहा है कैसे आप rubygems डाउनग्रेड करते हैं? डेटासेट की तुलना में डेटार तेज है, जब डेटासेट को पॉपुलेट किया जा सकता है? मैं कोड :: ब्लॉकों के साथ एक पुस्तकालय से कैसे लिंक करूं? आप मेमोरीस्ट्रीम से स्ट्रिंग कैसे प्राप्त करते हैं? क्या "आयात करें" आयात करता है? क्या एक जावा सरणी को हैशमैप कुंजी के रूप में इस्तेमाल किया जा सकता है AngularJS: एक सेवा गुणों को बाध्य करने का सही तरीका लिनक्स पर केबीआईटीआईटी (और) मिलते हैं मॉडल के लिए नंबर का उपयोग करने वाले Angularjs एनजी-विकल्प प्रारंभिक मान का चयन नहीं करते हैं फोरो पर यादृच्छिक सूचकांकऑटोओफ़ाउंड अपवाद देखें पूरा मेल हेडर एसटीएल एल्गोरिदम के साथ स्थानीय कक्षाओं का उपयोग करना

क्या मुझे सफलता और त्रुटि के बजाय नए jQuery AJAX कोड के लिए। () और .fail () का उपयोग करना चाहिए

मैंने इस तरह कोडित किया है:

$.ajax({ cache: false, url: "/Admin/Contents/GetData", data: { accountID: AccountID }, success: function (data) { $('#CityID').html(data); }, error: function (ajaxContext) { alert(ajaxContext.responseText) } }); 

लेकिन जब मैं अंत में jQuery .ajax() प्रलेखन को देखता हूं, तो मुझे लगता है कि मुझे नीचे की तरह कोडिंग करना चाहिए या कम से कम यह एक .done() और .done() जोड़ने का सुझाव देता है:

 var request = $.ajax({ cache: false, url: "/Admin/Contents/GetData", data: { accountID: AccountID } }); request.done(function (data) { xxx; }); request.fail(function (jqXHR, textStatus) { xxx; }); 

अद्यतन करें

अगर मैं कोड को पसंद करता हूं तो क्या यह वही होता है या इसे तीन में तोड़ने का कोई फायदा है?

 $.ajax({ cache: false, url: "/Admin/Contents/GetData", data: { accountID: AccountID } }).done(function (data) { xxx; }).fail(function (jqXHR, textStatus) { xxx; }); 

Solutions Collecting From Web of "क्या मुझे सफलता और त्रुटि के बजाय नए jQuery AJAX कोड के लिए। () और .fail () का उपयोग करना चाहिए"

जैसा कि उपयोगकर्ता 2246674 द्वारा बताया गया है, success और error का उपयोग करते हुए एजेक्स फ़ंक्शन के पैरामीटर मान्य है।

पूर्ववर्ती उत्तर के अनुरूप होने के लिए, दस्तावेज़ पढ़ना:

नापसंद नोटिस :

JqXHR.success (), jqXHR.error (), और jqXHR.complete () कॉलबैक को jQuery 1.8 में पदावनत किया जाएगा। अपने अंतिम निष्कासन के लिए अपना कोड तैयार करने के लिए, jqXHR.done (), jqXHR.fail (), और jqXHR.always () का उपयोग करें।

यदि आप कॉलबैक-हेरफेर फ़ंक्शन (उदाहरण के लिए विधि-चेनिंग का उपयोग करके) का उपयोग कर .done() , तो success() , error() और complete() बजाय .done() , .fail() और .always() उपयोग करें।

मैं @ माइकल लैफराज के पद पर कुछ जोड़ना चाहता हूं:

jqXHR.done() तेज है!

jqXHR.success() कॉलबैक में कुछ लोड टाइम है और कभी-कभी स्क्रिप्ट को ओवरकिल कर सकता है। मुझे लगता है कि इससे पहले मुश्किल तरीके से पता चलता है

अद्यतन करें:

jqXHR.done() , jqXHR.fail() और jqXHR.always() का उपयोग करके आप jqXHR.done() अनुरोध के साथ बेहतर हेरफेर कर सकते हैं। आम तौर पर आप कुछ वैरिएबल या ऑब्जेक्ट में एजेक्स को परिभाषित कर सकते हैं और अपने कोड के किसी भी हिस्से में वेरिएबल या वस्तु का उपयोग कर सकते हैं और डेटा को तेज़ी से प्राप्त कर सकते हैं। अच्छा उदाहरण:

 /* Initialize some your AJAX function */ function call_ajax(attr){ var settings=$.extend({ call : 'users', option : 'list' }, attr ); return $.ajax({ type: "POST", url: "//exapmple.com//ajax.php", data: settings, cache : false }); } /* .... Somewhere in your code ..... */ call_ajax({ /* ... */ id : 10, option : 'edit_user' change : { name : 'John Doe' } /* ... */ }).done(function(data){ /* DO SOMETHING AWESOME */ }); 

सरल शब्दों में

 $.ajax("info.txt").done(function(data) { alert(data); }).fail(function(data){ alert("Try again champ!"); }); 

अगर इसकी जानकारी प्राप्त होती है, तो यह सचेत होगा और जो कुछ भी आप जोड़ते हैं या यदि कोई भी सर्वर से जानकारी को प्राप्त करने में असमर्थ होता है, तो चेतावनी या त्रुटि फ़ंक्शन।