2009-12-06 6 views
0

j'utilise $ .getJSON et voici mon echo fichier php: ing retour jsonstringboucle à travers un tableau numérique json?

for($i=1; $i<=10; $i++) 
{ 
    $nr[] = "nr" . $i; 
} 

$nr = json_encode($nr); 

echo "{'result': 'error', 'count': '$nr'}"; 

comment puis-je boucle tout le nr jusqu'au bout jquery html()?

Je veux l'écho de retour à la page Web comme:

nr 1 nr 2 nr 3 nr 4 nr 5 nr 6 nr 7 nr 8 nr 9 nr 10

Répondre

1

En jquery, eval le "compte" comme

array_data=eval(json_data["count"]) 

php retourner ce

{'result': 'error', 'count': '["nr1","nr2","nr3","nr4","nr5","nr6","nr7","nr8","nr9","nr10"]'} 

Une fois que vous eval "count"

array_data seront ["nr1","nr2","nr3","nr4","nr5","nr6","nr7","nr8","nr9","nr10"]

Après cela, vous pouvez boucle array_data

+0

que se passe-t-il si la variable count contient des valeurs de chaîne différentes? –

+0

ok, de la même manière, j'ai également mis à jour ma réponse. – YOU

0
$.getJSON('file.php', function(data){ 
    for(var i=0; i<data.count.length; i++){ 
    alert(i+": "+data.count[i]); 
    } 
}); 

edit: Le problème est que la façon dont vous stocker En effet, le tableau php est stocké sous forme de chaîne dans le fichier json. Essayez plutôt ce qui suit:

for($i=1; $i<=10; $i++) 
{ 
    $nr[] = "nr" . $i; 
} 
$ json = array('result' => 'error', 'count' => $nr); 
echo json_encode($json); 
Questions connexes