दिलचस्प पोस्ट
$ अजाक्स पोस्ट में पैरामीटर कैसे पारित करें? वेबएपीआई एकाधिक रख / पोस्ट मापदंडों एक्स, वाई = ज़िप (* ज़िप (ए, बी)) पायथन में क्यों काम करता है? जीआरपी इतनी तेजी से कैसे चला जाता है? सी / सी ++ में गणित अभिव्यक्ति पार्स करना UITableViewCell, गतिशील ऊंचाई के साथ UITextView क्यों नहीं मैं res.json को कॉल इनलाइन कर सकते हैं? परिणाम पृष्ठ पर अंक लगाना रूबी पर रेल सर्वश्रेष्ठ अभ्यास – बड़े नियंत्रक बनाम छोटे नियंत्रक कैसे AsyncTask से रिटर्न मूल्य को नियंत्रित करने के लिए सभी सबप्लॉट्स के लिए डिप्टीकल कलर साइक्ल मैटप्लोटिब के साथ कैसे सेट करें? रनटाइम चेतावनी: डेटटाइमफ़ील्ड को एक सार्थक तारीख समय मिला थ्रेड के अंदर हेन्डलर नहीं बना सकते हैं, जो कि Looper.prepare () को ProgressDialog के लिए AsyncTask के अंदर नहीं कहा है टी-एसक्यूएल के जरिए विदेशी कुंजी बाधाओं को अस्थायी रूप से अक्षम कैसे किया जा सकता है? QueryPerformanceCounter का उपयोग कैसे करें?

$। एजेक्स संदर्भ विकल्प

याय क्यूडीपी पॉडकास्ट के एपिसोड 11 में $ .एजेक्स कॉन्टैक्ट ऑप्शन का उल्लेख है। मैं सफलतापूर्वक कॉलबैक में इस विकल्प का उपयोग कैसे करूं? मैं वर्तमान में जो कर रहा हूं वह अपने इनपुट पैरामीटर को सफलता के कॉलबैक पर वापस कर रहा है ताकि मैं उस आईडी को सचेत कर सकूं जिसे सफलता / त्रुटि के बाद बुलाया गया था। अगर मैं संदर्भ विकल्प का उपयोग करता हूं, तो शायद मुझे मापदंडों को वापस बुलाया दिनचर्या से पारित नहीं करना पड़ता है।

इस उदाहरण में, मैं STATEID को सफलता के क्षेत्र में वापस कर देता हूं ताकि राज्य को डीओएम से हटा दिया जाए, जो इसे डाटाबेस से हटा दिया गया हो।

$('td.delete').click(function() { var confirm = window.confirm('Are you sure?'); if (confirm) { var StateID = $(this).parents('tr').attr('id'); $.ajax({ url: 'Remote/State.cfc', data: { method: 'Delete', 'StateID': StateID }, success: function(result) { if (result.MSG == '') { $('#' + result.STATEID).remove(); } else { $('#msg').text(result.MSG).addClass('err');; }; } }); } }); 

Solutions Collecting From Web of "$। एजेक्स संदर्भ विकल्प"

सभी context करता है यह कॉलबैक में इसके मूल्य निर्धारित करता है।

इसलिए यदि आप एक ईवेंट हैंडलर में हैं, और आप चाहते हैं कि कॉलबैक में this ईवेंट प्राप्त करने वाला तत्व हो, तो आप चाहते हैं:

 context:this, success:function() { // "this" is whatever the value was where this ajax call was made } 

यदि आप इसे किसी अन्य प्रकार से करना चाहते हैं, तो बस इसे सेट करें, और this उल्लेख करेगा:

 context:{some:'value'}, success:function() { // "this" the object you passed alert( this.some ); // "value" } 

आपके द्वारा प्रश्न में जोड़े गए कोड में, आप StateID उपयोग कर सकते हैं, लेकिन आपको वास्तव में इसकी आवश्यकता नहीं होगी क्योंकि आपके पास पहले से ही उस चर तक पहुंच है।

 var StateID = $(this).parents('tr').attr('id'); $.ajax({ url: 'Remote/State.cfc' ,data: { method:'Delete' ,'StateID':StateID } ,context: StateID ,success: function(result){ alert(this); // the value of StateID alert(StateID); // same as above if (result.MSG == '') { $('#' + result.STATEID).remove(); } else { $('#msg').text(result.MSG).addClass('err');; }; } }); 

यदि आप संदर्भ विकल्प सेट करते हैं, तो सफलता में this आपके context के मान के रूप में सेट हो जाएगा। इसलिए यदि आप किसी वस्तु को अपने इनपुट पैरामीटर नामों और प्रसंगों के रूप में मानों वाले पास करते हैं, तो सफलता में आप इसका उपयोग कर सकते हैं। this.param1 को अपने पहले इनपुट पैरामीटर के मान प्राप्त करने के लिए

अधिक के लिए। एजेक्स () डॉक्स देखें।