wake-up-neo.com

Nicht gefundener TypeError: Der Operator 'in' kann nicht zur Suche nach 'length' in verwendet werden

Nicht gefundener TypeError: Der Operator 'in' kann nicht zur Suche nach 'length' in .__ verwendet werden. "

Dies ist der Fehler, den ich erhalte, wenn ich versuche, einen $.each für dieses JSON-Objekt auszuführen:

{"type":"Anuncio","textos":["Probando esto","$ 20150515"],"submit":"codParameters?___DDSESSIONID\u003d14EA4721A904D6DD71591156996E29F7%3A%2FMobilTest"}

Ich habe auch versucht, dasselbe mit stringify zu tun, aber ich erhalte die gleiche Fehlermeldung:

{\"type\":\"Anuncio\",\"textos\":[\"Probando esto\",\"$ 20150515\"],\"submit\":\"codParameters?___DDSESSIONID\\u003d06CBEC9D1A53616EFF703A8C71FBC2B4%3A%2FMobilTest\"}"

Wenn ich die Parameter ___DDSESSIONID\\u003d06CBEC9D1A53616EFF703A8C71FBC2B4%3A%2FMobilTest aus dem Objekt entferne, funktioniert $ .each einwandfrei. 

Warum könnte das passieren?

Danke im Voraus.

Der in-Operator kann nur für Objekte verwendet werden. Sie verwenden es für einen String. Stellen Sie sicher, dass Ihr Wert ein Objekt ist, bevor Sie $.each verwenden. In diesem speziellen Fall müssen Sie die JSON parsen:

$.each(JSON.parse(myData), ...);
166
Felix Kling

vielleicht vergessen Sie den Parameter dataType: 'json' in Ihrer $ .ajax 

$.ajax({
   type: "POST",
   dataType: "json",
   url: url,
   data: { get_member: id },
   success: function( response ) 
   { 
     //some action here
   },
   error: function( error )
   {
     alert( error );
   }
});
0