Bootstrap自动完成(typeahead)不起作用

时间:2014-04-27 16:41:54

标签: php mysql twitter-bootstrap bootstrap-typeahead

我正在尝试创建一个使用Bootstrap的预先输入功能的自动完成文本框。我已经通过javascript中的数组测试了它,手动输入。但是我尝试添加允许自动完成的代码来使用来自mysql数据库的数据,但我无法使其工作。我该怎么做才能解决这个问题,以便自动完成功能显示来自MySQL数据库的建议单词?

HTML(test2.html)

<div class="well">  
    <input type="text" class="span3" id="typeahead" data-provide="typeahead" data-items="4" />  
</div>  

<script>    
$('#typeahead').typeahead({
    source: function(typeahead, query){
        $.ajax({
            url: 'source.php',
            type: 'POST',
            data: 'query=' + query,
            dataType: 'JSON',
            async: 'false',
            success: function(data){
                typeahead.process(data);
            }
        });
    } 
});     
</script>  


PHP(source.php)

<?php 

include 'connect.php'; // connects to database

if (isset($_POST['query'])) {
    $query = $_POST['query'];
    $mysql_query = mysql_query("SELECT * FROM country WHERE country LIKE '%{$query}%'");

    while ($row = mysql_fetch_assoc($mysql_query)) {  
        $array[] = $row['name'];
    }

    json_cnode($array)

}

1 个答案:

答案 0 :(得分:0)

错误出现在代码的下一部分:

json_cnode ($array)

应该说:

echo json_encode ($array);