jquery - Change value on success, but not changing -


इस सवाल का पहले से ही एक उत्तर है: < 22 जवाब

मुझे < कोड> var राज्य सफलता पर, लेकिन जेएस कोड डीबग करना, यह सफलता समारोह को बिल्कुल भी कॉल नहीं करता है, भले ही सफलता हो। राज्य चर अपरिभाषित है। मुझे यकीन नहीं है कि वह क्यों नहीं बदलता। फायरबग का उपयोग कर नेटवर्क को देखते हुए, प्रतिक्रिया {"d": 1} है, जो कि राज्य के पास होने वाला मूल्य होना चाहिए। किसी भी मदद की सराहना की है

  var राज्य; $। एजेक्स ({url: "isoServe.asmx / getstatus", प्रकार: "GET", contentType: "application / json; charset = utf-8", डेटा प्रकार: "json", सफलता: फ़ंक्शन (msg) {state = Msg.d;}, त्रुटि: कार्य () {चेतावनी ("त्रुटि");}}); वापसी स्थिति;    

आपको वापस the राज्य AJAX कॉल के अंदर:

var राज्य;

  $। Ajax ({url: "isoServe.asmx / GetStatus", प्रकार: "GET", contentType: "अनुप्रयोग / जेसन; वर्णसंकेत = यूटीएफ -8", डेटाप्रकार: "जेसन", सफलता: कार्य (संदेश) {state = msg.d; वापसी स्थिति;}, त्रुटि: कार्य () {अलर्ट ("त्रुटि");} });  

आपके मामले में, एजेएक्स रिस्पांसस आने से पहले return कथन निकाल दिया जाता है! जैसा कि यह कहते हैं, अतुल्यकालिक, आपको इसकी प्रतिक्रिया तक इंतजार करना पड़ता है।


अपडेट:

आप AJAX कॉल के लिए सीधे प्रतिसाद नहीं कर सकते, क्योंकि यह एक है अतुल्यकालिक अनुरोध इसके बजाय, यह सफलता कॉलबैक में एक अन्य फ़ंक्शन का उपयोग कर सकता है, जैसे फ़ंक्शन ट्रिगर होता है और राज्य सेट होते हैं।


Comments

Popular posts from this blog

Active Directory Authenticated Proxy Server with Squid or CNTLM -

java - Can't add JTree to JPanel of a JInternalFrame -

c - The joining operator ";" in my shell isn't working properly -