2011-03-20 23 views
5

Bunu çalıştırmak düşünün: /ajax/watch.php İçindeYanıt metni ajax/jquery'den nasıl edinilir?

 $.ajax({ 
     type: 'POST', 
     url: '/ajax/watch.php', 
     data: {'watch':'aukcia', 'id':aukciaID}, 
     complete: function(responseText){ 
      alert(responseText); 
     } 
    }); 

, ı bu olduğunu varsayalım:

echo 'this is what I want'; 

Ve uyarısı (responseText) döndürür:

[object Object] 

İhtiyacım olan metin dizgimin yerine. Herhangi bir yardım, lütfen?

+0

düz metin döndürdüğünüzden emin olun senin PHP dosyasından. – JohnP

+0

100% eminim:/ –

cevap

12

JQuery'nizin bir şekilde yanıtınız yerine XMLHttpRequest nesnesini döndürdüğü anlaşılıyor. Bu işe yaramazsa

$.ajax({ 
    type: 'POST', 
    url: '/ajax/watch.php', 
    data: {'watch':'aukcia', 'id':aukciaID}, 
    complete: function(r){ 
     alert(r.responseText); 
    } 
}); 

Ancak, bir JSON yanıtı aldıktan aslında olabilir ve [object Object] sen: Durum buysa

, böyle, onun responseText özelliği için sormalısınız Görmek, tarayıcınızın JSON yanıtınızı temsil etmesi olabilir.

Nesne özelliklerinde gezinerek içeriklerini denetleyebilmeniz gerekir. İsterseniz Ancak, aynı zamanda jQuery Sesli arama yaptığınızda dataType: 'text' dahil ederek, JSON yanıtını ayrıştırmak için değil söyleyebilirim: Daha fazla bilgi için

$.ajax({ 
    type: 'POST', 
    url: '/ajax/watch.php', 
    data: {'watch':'aukcia', 'id':aukciaID}, 
    dataType: 'text', 
    complete: function(data){ 
     alert(data); 
    } 
}); 

, bkz: http://api.jquery.com/jQuery.ajax/

+0

teşekkürler, işe yarıyor! bu durumda "r" nedir? "Cevap" ya da bir şey için kısa? (sadece merak) –

+1

"r" sadece bir javascript nesnesidir. İstediğiniz herşeyi adlandırabilirsiniz ... – pokiman

+0

teşekkürler, bu iki eserin en az biri (ikincisi). eski olan yok. –