自动完成小部件由于某种原因不起作用.....(使用MySQL和PHP进行jQuery自动完成)

时间:2016-06-20 12:47:47

标签: php jquery mysql autocomplete

我想从导入JQUERY库中使用AUTOCOMPLETE小部件, 但出于某种原因  它似乎无法运行。 ...... 你能解决这个问题吗?

我想要做的是制作一个自动建议列表,它可以读取您的输入并显示您在键入时从MYSQL中提取的相关匹配项。 如果您对阅读我的代码有任何想法,请告诉我以及我先问的问题。

谢谢!!!

--- --- input.php

<body>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script> 
    <script language="JavaScript">


                (function($){
                    $(document).ready(function(){


                            $('#customerAutocomplte').autocomplete({

                                    source: function(request, response) {
                                            $.ajax({

                                                url: "./suggest_address.php",


                                                dataType: "json",

                                                type: "post",

                                                data: {
                                                    term : request.term,
                                                },

                                                success: function( data ) {

                                                }
                                            });
                                     },            


                                    minLength:3,

                                    select: function( event, ui ) {


                                        this.form1.prefName.value   = ui.item.prefName;
                                        this.form1.cityName.value   = ui.item.cityName;
                                        this.form1.streetName.value = ui.item.streetName;

                                     }              
                            });
                    });
                }(jQuery))

    </script>

--- --- suggest_address.php

<?php


if(!isset($_POST["term"]))
      exit;


$mysqli = new mysqli('Host or IP', 'User', 'Pass', 'DBName');


if (mysqli_connect_errno()) {
    printf("Connect failed %s\n", mysqli_connect_error());
    exit();
}else{

    $mysqli->set_charset("utf8");
}



    if ($result  = $mysqli->query("select zip, prefName, cityName, streetName from zipcode where zip like "'. mysql_real_escape_string($_POST['term']) .'%" order by zip asc")) {


        $data = array();


        while( $row = mysql_fetch_array($result, MYSQL_ASSOC) ){

                $data[] = array(
                    'value'      => $row->zip ,
                    'prefName'   => $row->prefName ,
                    'cityName'   => $row->cityName ,
                    'streetName' => $row->streetName
                );
        }

        echo json_encode($data);
    }


flush();

$mysqli->close();

&GT;

1 个答案:

答案 0 :(得分:0)

在每个部分中使用提示以了解其中断的位置。 正确地告诉你哪条线路有问题。 1.检查是否调用了自动完成

2.print in controller

3.alert返回数据(数组)

4.在必要的行中使用警报来查找问题