我如何正确编写ajax响应

时间:2009-09-18 18:51:11

标签: php jquery ajax autocomplete

我知道这对我的问题来说是一个糟糕的标题,但我要做的是回复自动填充http://docs.jquery.com/Plugins/Autocomplete#API_Documentation

我没有收到很多元素,只收到“数组”。我知道回声工作的方式显然是错误的但是我如何以这种方式回应这个自动完成工作?

mydoc.html

$().ready(function() {
    $("#suggest3").autocomplete("reply.php", {
        multiple: true,
        mustMatch: true,
        autoFill: true
    });

});

reply.php

<?php
// Fill up array with names
$a[]="Anna";
$a[]="Brittany";
$a[]="Amanda";

  $response=$a;

echo $response;
?>

2 个答案:

答案 0 :(得分:4)

将其作为JSON发送或将其转换为字符串 - 否则php只会打印对象类型。

JSON:

echo json_encode($a);

阵列:

echo implode(',',$a);

答案 1 :(得分:1)

Tonycore正确地使用了json_encode()答案。我只是想补充一点,当返回JSON时,最好正确设置标题:

header("Content-type: application/json");
echo json_encode($a);