Jquery - Uncaught TypeError: Impossible d'utiliser un 'dans' l'opérateur de recherche pour '324' dans

Je suis en train d'envoyer une requête Get par ajax et de sortie de données json renvoyé par le serveur au format html.

Mais, j'ai eu cette erreur.

Uncaught TypeError: Cannot use 'in' operator to search for '324' in 
[{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}]

C'est mon code qui envoie une requête Get fichier php en ajax.
Lorsque j'utilise $.chaque méthode, il reçois le message d'erreur que j'ai montré ci-dessus.

parentCat.on('change', function(e){
    parentCatId = $(this).val();

    $.get(
        'index.php?r=admin/post/ajax',
        {"parentCatId":parentCatId},
        function(data){                     
            $.each(data, function(key, value){
                console.log(key + ":" + value)
            })
        }
    )

})

C'est mon code PHP qui retourne un résultat de requête au format json.

public function actionAjax(){

    $parentCatId=$_GET['parentCatId'];

        $catData = Category::getTargetCategoryData($parentCatId);

        echo CJSON::encode($catData);
        Yii::app()->end();

}

données json retourné par ce php, c'est comme cela.

[{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}]

Quelqu'un sait comment résoudre ce problème?

Merci de m'aider.
Merci d'avance 🙂

  • D'où vient ce message d'erreur vient?
  • pouvez-vous ajouter un console.log(data) avant la each stmt et de voir ce qui est écrit dans la console
  • Merci!!!! mon problème a résoudre maintenant 🙂
  • Cela peut aider quelqu'un atterri ici, mais mon problème a été en utilisant $.each('selector')... au lieu de $('selector').each(...
InformationsquelleAutor Hayato | 2013-08-29