0

我是阿贾克斯的新手。我有 Mysql 数据库表

city_list 

id | city | province | country
------
1 | Calgary | AB | Canada
------------------- 
2 | Edmonton | AB | Canada
-------------------- 
3 | Toronto | ON | Canada
-------------------

等等.....

index.php

$('#city').autocomplete(
    {
        source: "searchSuggest.php",
        minLength: 3
    });

我想为以下字段创建自动完成

<input type="text" id="city" name="city">

serchSuggest.php

<?php
include('db_connect.php');
if($_REQUEST)
{
    $city   = $_REQUEST['city'];
    $city = ucwords($city);
    $return_results = array();
    $query = "select city, province from city_list where city LIKE '$city%'";
    $results = mysql_query( $query) or die('ok');
    $row=mysql_fetch_array($results);
        $i=0;
        while($row)
        {
        $i=$i+1;
        $return_results[$i] = $row;
        $row=mysql_fetch_array($results);
        }
        print json_encode($return_results);
}    
?>

这工作正常。

var tags = [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby" ];
            $( "#city" ).autocomplete({
                source: function( request, response ) {
                        var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( request.term ), "i" );
                        response( $.grep( tags, function( item ){
                        return matcher.test( item );
                        }) );
                        }
                    });

如何将源更改为数据库表 city_list。谢谢。

4

2 回答 2

0

您可以从 php 请求中返回一个数组,然后您可以尝试 jquery autocomplete 的参数。您可以尝试阅读 jquery-ui 中的示例,您可能会从网站中得到点,因为您只是没有使用

于 2013-09-15T03:28:40.280 回答
0

我将从这个开始,我没有使用它,但是查看源代码,它似乎从数组中获取预填充的值。所以我要做的就是将所有信息加载到一个数组中并将其放入代码中,这将非常简单直接。

于 2013-09-15T02:38:45.113 回答