Miten jQuery.each funktiolla voi käydä läpi moniulotteisen taulukon?
<?php $arr['teksti'][0]="abc"; $arr['numero'][0]=123; $arr['teksti'][1]="def"; $arr['numero'][1]=456; echo json_encode($arr); ?>
$.getJSON("http://localhost/test.php", function(data){ for (i = 0; i < data.teksti.length; ++ i){ alert(data.teksti[i]+data.numero[i]); } //tässä haluaisin käyttää $.each() funktiota ylläolevalla tavalla }
Looppia loopin sisään.
Funktio, jolle each antaa arvoja, saa ensimmäisenä parametrinaan indeksin, jolloin voit hakea sen toisen suoraan indeksin perusteella taulukosta, kuten nytkin teet. Toisin sanoen eachin käyttö muuttaisi vain yhden taulukon (teksti) käsittelyä, toinen taulukko (numero) käsiteltäisiin entiseen tapaan. Siksi tässä tilanteessa eachin käytöstä ei minusta olisi mitään iloa.
Jos vastaava numero ja teksti muodostavat parin, olisi loogisempaa muodostaa taulukko toisin päin:
<?php $arr[0]['teksti'] = "abc"; $arr[0]['numero'] = 123; $arr[1]['teksti'] = "def"; $arr[1]['numero'] = 456;
Nyt saisit eachilla käytyä läpi kaikki arvot x, joilla olisi ominaisuudet x.teksti ja x.numero.
Aihe on jo aika vanha, joten et voi enää vastata siihen.