我想開發一個功能,根據數據庫中已有的內容提供建議,或允許您輸入自己的價值。這是讓用戶知道系統中已有內容的一種方式,以防他們想要對類似內容進行分類。所以我已經做到了。文本字段自動完成(在字段中),因爲你鍵入
問題是,下面的代碼提供了一個下拉菜單,我無法弄清楚在google中搜索哪些單詞以獲得關於內聯完成的教程,您可以在其中輸入並填充該單詞的其餘部分當你在盒子中輸入時,不會下拉。
任何人有任何建議嗎?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Auto Complete Input box</title>
<link rel="stylesheet" type="text/css" href="jquery.autocomplete.css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.autocomplete.js"></script>
<script>
$(document).ready
(function()
{
$("#tag").keyup
(function()
{
var tag= $(this).val();
if(tag!='')
{
$.ajax(
{
type: "GET",
url: "autocomplete.php",
data: "q=" + tag,
cache: true,
success: function(result)
{
$("#tag").val(result);
}
}
);
}
return false;
}
);
}
);
</script>
</head>
<body>
<form method="post" action="input.php">
Please put something in: <input name="tag" type="text" id="tag" size="20">
<input type="submit" value="Submit">
</form>
<?php
$mysqli=mysqli_connect('localhost','XXXXXXXXXX','XXXXXXXX','XXXXXXXXXXX') or die("Database Error");
$sql="SELECT auto_complete_suggestions FROM auto_complete";
$result = mysqli_query($mysqli,$sql) or die(mysqli_error());
?>
</body>
</html>
它鏈接到這一塊
<?php
$q=$_GET['q'];
$my_data=mysql_real_escape_string($q);
$mysqli=mysqli_connect('localhost','XXXXXXXXX','XXXXXXXXXX','XXXXXXXXXX') or die("Database Error");
$sql = "SELECT DISTINCT auto_complete_suggestions FROM auto_complete WHERE auto_complete_suggestions LIKE '%$my_data%'
ORDER BY CASE WHEN auto_complete_suggestions = '$mydata' THEN 0
WHEN auto_complete_suggestions LIKE '$mydata%' THEN 1
WHEN auto_complete_suggestions LIKE '%$mydata%' THEN 2
WHEN auto_complete_suggestions LIKE '%$mydata' THEN 3
ELSE 4
END, auto_complete_suggestions LIMIT 0,1";
$result = mysqli_query($mysqli,$sql) or die(mysqli_error());
if($result)
{
while($row=mysqli_fetch_array($result))
{
echo $row['auto_complete_suggestions']."\n";
}
}
?>
我假定這將是一個AJAX或JQuery的任務,但我沒有找到任何例子,讓我指出了正確的方向任何幫助
會不勝感激。
爲了簡潔起見:在我輸入文本時,我正在構建一個完成文本的功能,並直接在文本框中提供建議。
謝謝!
請點擊此鏈接:http://www.9lessons.info/2009/06/autosuggestion-with-jquery-ajax-and-php.html對於基本系統 – 2014-10-29 13:15:35
不幸的是,這正是我上面的腳本所做的。我正在尋找它將結果直接放入文本框 – new2programming 2014-10-29 13:16:55
作出更新的問題。 – new2programming 2014-10-30 15:15:24