このエラーを見つけるのは苦労しています。私は約10時間の検索とテストを費やしましたが、Googleでは何も提供できませんでした。あなたたちは本当に最後の希望です。 私は単純なHTMLテキストフィールドを持っている:PDOステートメントを使用したJQueryオートコンプリート
<input type="text" value="" id="keyword" name="zip" placeholder="Please enter ZIP code" required>
、ここでは私のJavascriptのコードがある(jQueryのファイルが正しくリンクされている、心配しないでください):
var MIN_LENGTH = 2;
$(document).ready(function() {
$("#keyword").keyup(function() {
var keyword = $("#keyword").val();
if (keyword.length >= MIN_LENGTH) {
$.get("autocomplete", { keyword: keyword })
.done(function(data) {
console.log(data);
});
}
});
});
私はテキストフィールドに値を入力すると"sw"私はコンソールに次のような結果を得ます:
["Swaziland\r","Sweden\r","Switzerland\r"]
これは正しいはずです。ここに私の最初の質問です。 "\ r"は普通ですか? もう1つ重要なのは、クエリ関数のオートコンプリートを追加するにはどうすればいいですか?私の目標は次の例のようになります:https://jqueryui.com/autocomplete/
私は長い間テストしましたが解決策を見つけることができません。そして私はそれが少しばかげたエラーだと思う。 ここでは、すべてのファイル:
autocomplete.php
if (!isset($_GET['keyword'])) {
die();
}
$keyword = $_GET['keyword'];
$data = SQL::searchForKeyword($keyword);
echo json_encode($data);
searchForKeyword機能:
static function searchForKeyword($keyword) {
$stmt = self::getInstance()->_conn->prepare("SELECT NameCountry as countries FROM `country` WHERE NameCountry LIKE ? ORDER BY countries");
$keyword = $keyword . '%';
$stmt->bindParam(1, $keyword, PDO::PARAM_STR, 100);
$isQueryOk = $stmt->execute();
$results = array();
if ($isQueryOk) {
$results = $stmt->fetchAll(PDO::FETCH_COLUMN);
} else {
trigger_error('Error executing statement.', E_USER_ERROR);
}
return $results;
}
私はすでに大きなありがとうしかし、それを試してみて、あなたが知っているだろう! – jor
私はそれを試しました。もう一度私の問題。私はいつも "SyntaxError:予期せぬトークン」しかし、このdoesntのは、任意の提案(=動作するようには思え –
jor
あなたautocomplete.phpがエラーをtrowing代わりにされているので、あなたが持っているこのエラーは次のとおりです。URL:そのような? 。JSON完全に(? 'httpsのような完全なパス+キーワード使用://www.bessetteweb.com/SO/40118887/search.phpキーワード= mass')のエラーを見て、それを直接アクセスするかをチェックし、' error.log'ファイルがある...デバッグに、あなたのVARSをエコーディレクトリ内のファイル... –