2011-01-04 11 views
23

मैं इस jQuery कोड का उपयोग कर रहा jQuery AJAX के साथ PHP से मान:कई वापसी

$.ajax 
({ 
    type: "POST", 
    url: "customerfilter.php", 
    data: dataString, 
    cache: false, 
    success: function(html) 
    { 
     $(".custName").html(html); 
    } 
}); 

कैसे मैं कुछ इस तरह कर सकते हैं: $(".projDesc").html(html1); तो मैं दो एचटीएमएल तत्वों में लौट आए परिणामों विभाजित कर सकते हैं?

echo "<p>" .$row['cust_name']. "</p>"; 

पीएचपी मैं उपयोग कर रहा हूँ thats और मैं एक और बयान जो मैं एक और HTML तत्व

यह आप मतलब में डाल सकते हैं प्रतिध्वनित करने के लिए करना चाहते हैं?

उत्तर

54

PHP से JSON में एक एसोसिएटिव सरणी को परिवर्तित करने के लिए json_encode() का उपयोग करें और $.getJSON() का उपयोग करें, जो एक जावास्क्रिप्ट सरणी लौटाएगा।

उदाहरण:

<?php echo json_encode(array("a" => "valueA", "b" => "valueB")); ?> 

जावास्क्रिप्ट में:

$.getJSON("myscript.php", function(data) { 
    alert("Value for 'a': " + data.a + "\nValue for 'b': " + data.b); 
}); 
+0

बहुत बढ़िया! उस महान संकेत के लिए बहुत बहुत धन्यवाद! :) – drpelz

+1

क्या आप AJAX पोस्ट के सफलता फ़ंक्शन के अंदर .getJson का उपयोग करते हैं या इसे पूरी तरह से अलग करते हैं? – Arken

+0

@ आर्केन मुझे यकीन नहीं है कि आपका क्या मतलब है। 'getJSON() 'एक यूआरएल और सफलता हैंडलर फ़ंक्शन लेता है जो डीकोड किए गए डेटा को इसके तर्क के रूप में प्राप्त करता है। आपको इसे हैंडलर में फिर से कॉल करने की आवश्यकता नहीं है, क्योंकि अनुरोध पहले से ही निष्पादित कर दिया गया है। –

3

आप JSON ऑब्जेक्ट क्यों नहीं लौटते हैं। इस तरह आप AJAX प्रतिक्रिया के अंदर आसानी से कई अलग-अलग परिणाम डाल सकते हैं।

41

आपकी प्रतिक्रिया वापसी JSON, तो आप इस के लिए अपने jQuery को बदलना होगा, ताकि उम्मीद डेटाप्रकार json है:

$.ajax 
({ 
    type: "POST", 
    url: "customerfilter.php", 
    dataType: 'json', 
    cache: false, 
    success: function(data) 
    { 
     $(".custName").html(data.message1); 
     $(".custName2").html(data.message2); 
    } 
}); 

फिर आपको JSON ऐरे के रूप में अपनी प्रतिक्रिया को एन्कोड करने की आवश्यकता है:

<?php echo json_encode(
     array("message1" => "Hi", 
     "message2" => "Something else") 
) ?> 
+0

डेटा: जेसन, डेटा होना चाहिए टाइप: "जेसन" लेकिन धन्यवाद! – benhowdle89

+0

सही, धन्यवाद। –

+1

डेटा होना चाहिए टाइप: 'जेसन'। आप उद्धरण खो रहे हैं। – Stephen305

संबंधित मुद्दे