2013-08-27 4 views
7

Unten ist mein Ajax-AufrufErste Typeerror: invalid 'in' Operanden obj während Abrufen von Daten mit Ajax

$(document).ready(function() { 
    $("#blog").focusout(function() { 
     alert('Focus out event call'); 
     alert('hello'); 
     $.ajax({ 
      url: '/homes', 
      method: 'POST', 
      data: 'blog=' + $('#blog').val(), 
      success: function(result) { 
       $.each(result, function(key, val) { 
        $("#result").append('<div><label>' + val.description + '</label></div>'); 
       }); 
      }, 
      error: function() { 
       alert('failure.'); 
      } 
     }); 
    }); 
}); 

Ich erhalte 'Typeerror: invalid 'in' Operanden obj' Fehler in meiner Konsole

Im Voraus danke

+0

erhalten Sie Alarm ..? –

+0

Ihr Code fehlt ein schließendes '});'. Ist das schlechtes Cut-and-Paste oder die zugrunde liegende Ursache? –

Antwort

14

einen Datentyp Attribut in Ihrem Ajax Erwähnen call.It Text von default.That uns überlegen, warum nicht in der Lage auf Ergebnis iterieren

dataType:'json' 

Weil Ihr Ergebnis sollte Array oder json sein

+0

Danke swapnil Patil, es funktioniert jetzt – user2621586

0

Sollte nicht data ein Objekt sein?

data: { 
    blog: $('#blog').val() 
}, 
+0

Nein; http://api.jquery.com/jQuery.ajax/ gibt an, dass es sich um ein Objekt oder eine Zeichenfolge handeln kann. –

1

Das 'Ergebnis' in der Erfolgsfunktion sollte ein Array sein