jQuery

2010-07-13 11 views
11

çalışmıyor deyim dize karşılaştırması 'Eğer' Ben çok basit bir şeyler yapmaya çalışıyor çok zor zamanlar geçiriyorum. İşte kod:jQuery

 if(data == 'success') { 

      alert('foo'); 

     } else { 

      alert(data); 

     } 

bunu basitleştirdik, ama hepsi o ne olup bittiğini anlamak için gerekli bu. 'data' değişkeni, bir fark yaratan AJAX çağrısının sonucudur. Sorun şu ki, her zaman 'else' ifadesine gider ve 'başarı'ya' uyarır; Burada neler olduğu hakkında bir fikrin var mı?

DÜZENLEME: Çünkü eğer Eğer dosyada sondaki> kaldırabilir

...code.... 
$update = mysql_query("UPDATE users SET feeds = '$afterFeed' WHERE username = '$name'") or  die("Query Failed"); 

if($update) { 

    echo 'success'; //this is the 'string' that is being given to 'data' 
} 
+2

' alert (typeof verileri) anlamak için beni uzun sürdü. –

+0

Bana 'string' verdi. – williamg

+1

tam ajax yanıtını yapıştırabilir misin, json mu? – redsquare

cevap

28

Böyle $.trim() kullanarak istemci tarafında düzeltebilirim:

if($.trim(data) == 'success') { 

Veya daha iyi bir yaklaşım muhtemelen hatalı yeni hat sunucu tarafından gelen yeni satırı, çıkarmadan olurdu PHP'niz bir yerlerde, <? ?> bloğundan önce veya sonra kontrol edin, bu çoğunlukla çoğu zaman mahsurlar.

Ya da, sadece çıkış böyle, içerik çıkışının ardından: iyi çalışıyor

if($update) { 
    echo 'success'; 
    exit(); 
} 
+0

Ben bir elementin 'content' CSS özelliği okuma ve hatta geçmek için karşılaştırma yardımcı olmuyor kırparak ediyorum. –

0

:

$.post("/manage_sites.php", {before:before, edit:after}, function(data){ 

     if(data == success) { 

      alert('blah'); 

     } else { 
      alert(data); 
     } 
    }); 

Sonra PHP yanıtta:? Burada jQuery tam AJAX kodu dosyadaki son satır. Yorumlara orijinal sayıya yanıt vermek istiyorum, fakat nasıl olduğunu göremiyorum.

+1

sen sormadın bir soru üzerine Yorum yazmak için 50 temsilcisi gerekir. Göndermeye devam et! http://stackoverflow.com/faq – jasongetsdown

0

İstemci tarafı doğrulama.

$.trim() fine. 

Teşekkür ederim Nick. Eğer elmalarla armutların karşılaştırılması ve böylece her zaman başka içine alıyorsanız eğer `Bu size bir fikir verecektir; Onun çalışmıyor ...