0

だから私はこのJavaScriptの一部を持っています、それfoo.phpは値で投稿しval、戻ってきてdata、コンテナを空にし、コンテナgraphを新しいチャートで埋める関数を呼び出します。

$.post("foo.php", {val: val}, function(data){
    if(data.length >0) {
        $('#container').html('');
        graph(data);
    } 
});

foo.php、文字列ではなく配列を返すようにするにはどうすればよいですか? 現時点では、カンマで区切られたデータをエコーするechoinがあります。関数には、後で 使用する配列を作成する があります。foo.php1,2,3,4,5graphsplit(',' data)

foo.phpつまり、これはすべて正常に機能します。分割ステップを回避して、配列を直接返すことができるかどうか疑問に思っています。

ありがとう!

4

2 に答える 2

3

それjson_encodeが目的です:

echo json_encode( $array );

jQuery が返されたデータを JSON として解析することを認識できるように、JSON ヘッダーを設定することを忘れないでください。そうでない場合は、jQuery AJAX 呼び出しで次のように指定する必要があります。

$.post("foo.php", {val: val}, function(data){
    if (data.length > 0) {
        $('#container').html('');
        graph(data);
    } 
}, 'json'); // <-- Here you're specifying that it'll return JSON
于 2013-01-24T19:11:53.760 に答える
3

PHP で配列をjson_encode すると、jquery は JSON でエンコードされたデータを簡単に解析できます。

于 2013-01-24T19:11:56.827 に答える