inf*_*ity 2 javascript php mysql jquery
我正在建立一个网站来学习编码,我有一个基于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>
Run Code Online (Sandbox Code Playgroud)
下面是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>
Run Code Online (Sandbox Code Playgroud)
下面是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);
?>
Run Code Online (Sandbox Code Playgroud)
如果我直接去建议.php?q = SOMETHING并回显$ name,这就是出来的:
["City Market","Cafes","Cheesesteaks","Chicken Wings","Chinese","CSA","Coffee & Tea","Convenience Stores","Comedy Clubs"]Array
Run Code Online (Sandbox Code Playgroud)
当我在Chrome中打开开发人员面板时,jquery旁边的autosuggest错误说"Uncaught SyntaxError:Unexpected Token ="
我的autosuggest没有出现.怎么了?
谢谢大家的帮助!
我将=更改为:现在新错误是"意外令牌非法"并且自动填充仍然没有显示...有什么建议吗?
你在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 );
}
});
});
Run Code Online (Sandbox Code Playgroud)