1

テーブル ID をキーとして、テーブル フィールドを値として持つ PHP 配列があります。

PHP の例:

while($row = mysql_fetch_array($result))
{
    $id = $row['id'];
    $array[$id] = $row['some_field'];
}

次に、json_encode($array)次のようなものを取得します。

{"id1":"value1","abc":"123","xyz":"789"}

jQueryでこれをループするにはどうすればよいですか? これまでに見つけたものから、鍵を知る必要があるようです。そう:

var obj = jQuery.parseJSON(jsonVar);
alert(obj.abc); //prints 123

しかし、キーが動的であるためキーがわからない場合、どうすればこれらの値を取得できますか?
PHP 配列を再構築する必要がありますか?

4

2 に答える 2

3

PHP の連想配列を JSON オブジェクトにエンコードすると、配列ではなくなり、キーと値を持つオブジェクトになります。を使用して、JavaScriptでそれらを反復処理できますfor..in

for (var key in obj) {
   console.log(obj[key]);
}

注: for..in順序を保証するものではありません。順序を確保する必要がある場合は、代わりに配列にインデックスを付け、代わりにループ (または)key=>valueを使用する必要があります。forwhile

于 2013-04-24T21:43:46.930 に答える