Yakalanmamış TypeError: içinde 'uzunluk' aramak için 'in' operatörü kullanılamaz


101

Yakalanmamış TypeError: "içinde" uzunluk "aramak için" in "operatörü kullanılamaz

Bu $.eachJSON nesnesine bir yapmayı denediğimde aldığım hatadır :

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

Ben de stringify ile aynı şeyi yapmaya çalıştım ama aynı hatayı alıyorum:

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

Parametreleri ___DDSESSIONID\\u003d06CBEC9D1A53616EFF703A8C71FBC2B4%3A%2FMobilTestnesneden kaldırırsam , $ .each düzgün çalışıyor.

Bu neden oluyor olabilir?


4
Lütfen kodunuzu biçimlendirin, bu şekilde okumak imkansızdır. {}Metin düzenleyici düğmesini kullanabilir veya her kod satırında 4 boşluk girebilirsiniz .
Sidd

Yanıtlar:


238

inOperatörü yalnızca nesneler üzerinde çalışır. Onu bir dizede kullanıyorsun. Kullanmadan önce değerinizin bir nesne olduğundan emin olun $.each. Bu özel durumda, JSON'u ayrıştırmanız gerekir :

$.each(JSON.parse(myData), ...);

Felix, $ .each'den önce JSON.parse var, hata, anahtar gönderiminde -> "codParameters? ___ DDSESSIONID \ u003d14EA4721A904D6DD71591156996E29F7% 3A% 2FMobilTest" değerine sahip olduğunda görünüyor.
Iván Alberto Fontalvo Salgado

Lütfen kodunuzu gönderin, açıkladığınız hatayı tekrarlayamıyorum
Felix Kling

2
Cevap yoksa cevap göndermeyin. Sorunuzu düzenleyin ve ilgili kod içeren yer soruya.
Felix Kling

2 saatini boşa harcadı ve sonunda onu kullanmaya validator.showErrors(JSON.parse(data))
Mohammed Sufian

$ .Each ("ul li", function (k, v) {...}); için bu hatayı alıyorum
Cr1xus

18

$ .ajax dosyanıza dataType: 'json' parametresini eklemeyi unutmuş olabilirsiniz

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

Bu bana yaptı. Teşekkürler!
Luis Rock
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.