2012-08-01 6 views
-1

Je suis en train de parcourir un objet JSON en utilisant le code suivant, mais l'itération ne fonctionne pasobjet JSON itération ne fonctionne pas

function iterateRows() 
{ 
    var timein_rows = [{"id":"72","date":"2012-08-01"},{"id":"73","date":"2012-08-01"}]; 
    $.each(timein_rows, function(i, item) { 
     alert(item.id); 
    }); 
} 

Je crated chaîne JSON en utilisant php json_encode. Qu'est-ce que je fais mal?

+1

fonctionne pour moi. http://jsfiddle.net/F9yMv/ –

+1

Etes-vous sûr que c'est ce que 'timein_rows' contient? Pas une chaîne? – JJJ

+0

Vous code fonctionne juste. http://jsfiddle.net/FwFAq/ – xdazz

Répondre

1

Dans ce violon DEMO cela fonctionne très bien.

Vérifier:

  • votre code appelle iterateRows() où vous attendez à être appelé à partir
  • que la bibliothèque jQuery nécessaire est inclus/référencé où votre script est exécuté à

Basé sur le commentaire, si ce qui précède est bon, vérifiez les valeurs JSON chaque fois que l'appel est exécuté, vous pouvez faire similaire à console.log(timein_rows); avant .each().

Par exemple, le faire avec le code affiché la sortie de la console ressemble à:

[Object { id="72", date="2012-08-01"}, Object { id="73", date="2012-08-01"}] 

Vérifiez les sorties JSON entre l'appel de travail et l'appel sans travail des différences.

+0

Jquery fonctionne bien et cette fonction est appelée dans une autre partie de mon script – Vinay

+0

@Vinay: 'var timein_rows' est-il toujours les valeurs codées en dur que vous affichez ou est-ce que vous le définissez dynamiquement? Si elle est définie dynamiquement, vérifiez si un format/valeur non valide est dans le JSON et comparez ce JSON à celui où il fonctionne. – Nope

0

Vérifiez la console d'erreur de votre navigateur. Il s'agit probablement d'une erreur JavaScript dans la version que vous utilisez.