如何从Ajax调用中仅输出json编码的数组?

时间:2012-02-24 11:35:57

标签: php javascript jquery ajax json

我希望我的ajax调用只返回test.php

中我的数组中的值

目前,ajax调用正在返回php文件中存在的所有代码。

如何只返回json_encoded数组?

jQuery代码:

var params = {'action': 'save' , 'id':5};
$.ajax({
    type: "POST",
    url: "test.php",
    data: params,
    success: function( data ) {
        $.each(data, function (index, value) {
            $('#menu_container a').eq( index).text( value);
        });
    }
});

test.php的:

<?php
    $array = array();
    $i = 0;
    while ($i < $num) {
        $f1 = mysql_result($result, $i, "Page");
        $array[] = $f1; ?>

        <?php echo $f1; ?>

        <?php $i++;
    }
?>

</br>
</br>

<?php
    echo json_encode($array);
?>

</body>
</html>

1 个答案:

答案 0 :(得分:1)

只需删除生成输出的PHP代码的所有其他部分:

<?php
$array = array();
$i = 0;
while ($i < $num) {
    $f1 = mysql_result($result,$i,"Page");
    $array[] = $f1;
    $i++;
}
echo json_encode($array);
?>