2011-10-27 16 views
8

मैं JSON के रूप में jQuery AJAX कॉल के माध्यम से एक ASP.NET पृष्ठ से डेटा पोस्ट कर रहा हूं।एक jQuery.ajax त्रुटि प्रतिक्रिया संदेश पार्सिंग

मैं स्थिति को अनुकरण कर रहा हूं, जहां AJAX कॉल पर त्रुटि मिलती है। मुझे किसी त्रुटि के मामले में एक प्रतिक्रिया संदेश मिलता है और मुझे इस HTML को पृष्ठ पर किसी तत्व को असाइन करने की आवश्यकता होती है। jquery.ajax response

मैं संदेश जावास्क्रिप्ट चर, कि, जब क्रोम डिबगर के माध्यम से देखा मुझे पता चलता है कि यह जानकारी मैं responseText में की जरूरत है शामिल है:

यहाँ क्या मैं एक संदेश में मिलता है।

मुझे पृष्ठ पर प्रदर्शित करने के लिए प्रतिक्रिया टेक्स्ट का मूल्य कैसे प्राप्त होगा?

उत्तर

14

जावास्क्रिप्ट चर नाम में केस संवेदनशील हैं। आपके उदाहरण में, आप संदेश वस्तु पर responseText फ़ील्ड तक पहुंचने का प्रयास कर रहे थे, लेकिन आपके पास पूंजी 'आर' थी। ज्यादा बेहतर शैली में

msg['responseText'] 

या:: बजाय इस प्रयास करें

msg.responseText 
+0

+1 में त्रुटि मिली शैली सुझाव के लिए। – ZenMaster

+0

लगभग यह था =) धन्यवाद। –

2

इसकी एक वस्तु के बाद से xhr.responseText

की तरह इसे उपयोग करने
error: function(xhr, status, error) { 

    var err = eval("(" + xhr.responseText + ")"); 

    alert(err.Message); 

} 
+0

मेरा पहला प्रलोभन आपको eval का उपयोग करने के लिए वोट देना था ... लेकिन यह वास्तव में अच्छा काम करता है !! :-) इस उत्तर के लिए धन्यवाद। – richb01

2

डॉट संकेतन का उपयोग आप में देख सकते हैं कोड केवल आपके माउस पॉइंटर के नीचे - केवल "आर" के साथ, पूंजी "आर" नहीं:

msg['responseText'] 
1
<div id='error'></div> 

को लगता है कि यू msg

$('#error').html(msg.responseText) 
संबंधित मुद्दे