私はコーディングを学ぶためにウェブサイトを構築しており、3 つの mysql テーブルで入力している Jquery ui に基づくオートコンプリートがあります。
これが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に行き、$namesをエコーアウトすると、これが出てきます:
["City Market","Cafes","Cheesesteaks","Chicken Wings","Chinese","CSA","Coffee & Tea","Convenience Stores","Comedy Clubs"]Array
Chrome で開発者パネルを開くと、自動提案の jQuery の横に「Uncaught SyntaxError: Unexpected Token =" というエラーが表示されます。
自動提案が表示されません。どうしたの?
助けてくれてありがとう!
= を : に変更しましたが、新しいエラーは「予期しないトークンが不正です」で、オートコンプリートがまだ表示されません...何か提案はありますか?