0
我的問題是我想要搜索數據庫中的條目,使用從開頭開始而不是中間或結束。我看到了其他的StackOverflow答案,但是那些處理Jquery的自動完成將一個數組作爲源參數。使用jquery自動完成,在外部源搜索條目開始處
假設我有一個id =學校的教科書:
<input type="text" id="school">
在我的示例數據庫表,我有以下學校:
- 唐納德·特朗普小學
- 奧巴馬中東學校
- 富蘭克林·德拉諾·羅斯福中學
- 西奧多·羅斯福技術學院
- 約翰·亞當斯中學
- 安德魯·傑克遜中學
- 安德魯·約翰遜日間護理
- 克林頓監獄教育計劃
- 亞伯拉罕·林肯美術學院
如果我只需要輸入一個'A'返回的是基本上任何帶有A的字符串。
我想要的返回是:
- 安德魯·傑克遜中學
- 安德魯·約翰遜日間護理 美術
- 亞伯拉罕·林肯學院
$('#school').each(function (i, el) {
var that = $(el);
that.autocomplete({
source: "src/php/extraction.php"
, minLength: 2
, select: function (event, ui) {
info = ui.item.label;
$.ajax({
url: 'foobar.php'
, type: 'POST',
data: {
term : info }
, success: function (data) {
// do stuff }
});
} // end of select function
});
});
在我自動完成發送到的foobar.php我有以下代碼:
if (isset($_GET['term'])) {
$return_arr = array();
try {
$stmt = $conn->prepare('SELECT School_Name FROM SOME_TABLE WHERE School_Name LIKE :term');
$stmt->execute(array('term' => '%'.$_GET['term'].'%'));
while ($row = $stmt->fetch()) {
$return_arr[] = ucwords(strtolower($row['School_Name']));
}
} catch (PDOException $e) {
echo 'ERROR: '.$e->getMessage();
}
/* Toss back results as json encoded array. */
echo json_encode($return_arr);
}
哇。哈哈,非常感謝你 – Joseph
沒問題,只是標記爲接受,以幫助其他同樣的問題。 –