2011-03-19 28 views
6

मेरे पास एक jquery स्क्रिप्ट है, जो मेरे फॉर्म को पोस्ट करती है। यहाँ यह है:Jquery POST Json वापसी

$(document).ready(function(){ 
$("form#submit").submit(function() { 


var an  = $('#an').attr('value'); 
var betreff = $('#betreff').attr('value'); 
var text = $('#text').attr('value'); 

    $.ajax({ 
     type: "POST", 
     url: "newmsg.php", 
     data: "an="+ an +"& betreff="+ betreff +"&text="+ text, 
     success: function(){ 

      $('#window').html(name);     

     } 
    }); 
return false; 
}); 
}); 

मेरी newmsg.php फ़ाइल

<?php if($_POST['an']=="john") { echo json_encode(array("name"=>"hi john")); } ?> 

मेरी समस्या है, कि मेरे php फ़ाइल नाम वापस नहीं होगा, इसलिए मेरी div #window संदेश पोस्ट नहीं है

आशा है कि आप लोगों को समझ में ...

धन्यवाद बहुत बहुत

उत्तर

19

प्रयास करें

success: function(data){ 
    var json = $.parseJSON(data); 
    $('#window').html(json.name);     
} 
+0

यह मेरे लिए काम नहीं करता है :( – njaknjak

+0

आप किस jQuery का उपयोग कर रहे हैं? – mattsven

+0

मैं नवीनतम संस्करण – njaknjak

2

इस समस्या हिस्सा आपके पास है गलत

$('#an').attr('value'); 

यदि आईडी = एक एक इनपुट इसे इस तरह से किया जाना चाहिए है

$('#an').val(); 

यदि आईडी = एक एक कंटेनर यह है इस तरह किया जाना चाहिए

$('#an').html(); 

आप इनमें से बाकी को भी बदलना चाहते हैं

var betreff = $('#betreff').attr('value'); 
var text = $('#text').attr('value'); 
+0

धन्यवाद भी आदमी! – njaknjak

+0

आपका स्वागत है, तो आपने अपना समाधान अन्य समाधान क्यों चुना? –