php JSON自动完成$ _POST到另一个页面

时间:2013-10-04 14:40:05

标签: php jquery ajax autocomplete

我这里有一个带有AJAX自动完成功能的select_course.php。我想要做的是传递get_course.php中拉出的数组变量

<script type="text/javascript">
    $(document).ready(function(){
        $("#course_no").autocomplete({
            source:'get_course.php',
            remoteDataType: 'json',
            type: 'POST',
            minLength:1
        })
    });

以及带有它的表格

<form method="post" action="select_course_add.php" name="selectcourse">
<input size="35" type="text" id="course_no" name="course_no" autofocus /> 
<input type="submit" value=" Add " />
</form>  

get_course.php代码

$term=$_GET["term"];

$query=mysql_query("
SELECT    
    course_tbl.course_id
    , course_tbl.course_code
    , course_tbl.course_num
    , course_tbl.description
FROM
    cis_db.course_tbl
where course_num LIKE '".$term."%' OR course_code LIKE '%".$term."%'
ORDER BY course_tbl.course_num ASC, course_tbl.course_code ASC
");
$json=array();
    while($student=mysql_fetch_array($query)){
             $json[]=array(
            'value'=>$student["course_num"],
        'code'=>$student["course_code"], 
            'label'=>$student["course_description"]
                            );
        }
echo json_encode($json);
flush();

请帮助,我的问题是,如何转换并将此3变量用于$ _POST 'value'=&gt; $ student [“course_num”] 'code'= &gt; $ student [“course_code”],'label'=&gt; $ student [“course_description”]

1 个答案:

答案 0 :(得分:0)

您不需要这两行:

remoteDataType: 'json'
type: 'POST'

您的申请必须是GET,默认情况下,ajax调用知道响应类型是Json,因此您的响应必须是这样的数组:

echo json_encode(array('Value 1', 'Value 2', 'Value 3'));

如果您确实需要在阵列上发送更多值,可以使用自动完成的select方法来处理您想要的值。