2012-08-10 93 views
2

我正在建立一个网站来学习编码,我有一个基于JQuery UI的自动完成,我通过三个MySQL表填充。自动完成的一些问题

这是我上的index.php代码

<script src="./public/js/jquery.js"></script> 
    <script src="public/js/jquery-ui-1.8.22.custom.min.js" type="text/javascript" charset="utf-8"></script> 
    <script> 
    $(function() { 

      $("#search").autocomplete({ 
      source: "suggest.php", 
      minLength = 2, 
      select: function(event, ui) { 
        log(ui.item ? 
         "Selected: " + ui.item.value + aka " + ui.item.id : 
         "Nothing selected, input was " + this.value); 
        } 
      }); 

    }); 
    </script> 

继承人上的index.php的代码的形式(在我的搜索框和自动完成应该是在页面):

<form class="form-search span8 offset6"> 
    <input type="text" id='search' name='q' autocomplete="off" class="input-medium search-query"> 
    <button type="submit" class="btn btn-warning">GO!</button> 
</form> 

继承人对suggest.php代码:

<?php 

require("./config.php"); 

$q = $_GET['q']; 

$names = ''; 

$result = mysql_query("SELECT name FROM company WHERE name LIKE '$q%' UNION SELECT cat FROM cat WHERE cat LIKE '$q%' UNION SELECT subcat FROM subcat WHERE subcat LIKE '$q%' LIMIT 10"); 

$names = array(); 

while ($row = mysql_fetch_array($result)) { 
    $names[] = $row['name']; 
} 

echo json_encode($names); 
?> 

如果我直接去suggest.php q = SOMETHING和回声出$名字,这是什么出来:

["City Market","Cafes","Cheesesteaks","Chicken Wings","Chinese","CSA","Coffee & Tea","Convenience Stores","Comedy Clubs"]Array 

当我打开Chrome的开发者面板旁边有jQuery的用于自动提示说错误“未捕获的SyntaxError:意外的标记=”

我的自动提示未显示出来。怎么了?

感谢您的帮助!


我改变了=要:现在新的错误是“意外的标记非法”和autocomplet仍然没有显示出来......有什么建议?

+0

出于好奇,为什么你既呼应你的阵列的JSON表示,并在你的PHP数组本身? – 2012-08-10 15:49:52

+0

错误说明全部 – Don 2012-08-10 15:50:13

+0

@anthony,oops对不起,我有最后一个回声$名称只是为了测试...不应该在那里 – infinity 2012-08-10 15:52:12

回答

8

你在的minLength等号,应该是结肠

$(function() { 

     $("#search").autocomplete({ 
     source: "suggest.php", 
     minLength: 2, 
     select: function(event, ui) { 
       log(ui.item ? 
        "Selected: " + ui.item.value + aka " + ui.item.id : 
        "Nothing selected, input was " + this.value); 
       } 
     }); 

}); 
+0

漂亮的渔获,干得不错。 – 2012-08-10 15:52:48

+0

@Vic谢谢,我只是解决了这个问题。不幸的是,自动完成仍然没有显示出来。有什么建议么? – infinity 2012-08-10 15:53:41

+0

现在新的错误是意外令牌非法 – infinity 2012-08-10 15:54:54