请建议使用php和mysql提供jquery ui qutomplete的好教程,或者帮我解决我的代码问题。尝试了所有方法。找不到错误的代码。
我的php代码看起来像那样
if (isset($_REQUEST['term']))
{
$term = trim(strip_tags($_REQUEST['term']));//retrieve the search term that autocomplete sends
$result = $db->query("SELECT company as value,id FROM main WHERE company LIKE '$term'") or die(mysqli_error());;
$results = array();
while ($row = $result->fetch_row()) $results[] = array( 'id' => $row[0] , 'label' => $row[1], 'value' => $row[1] );
echo json_encode($results);
}
下面的Js代码
$("#auto").autocomplete({
source: "index.php",
minLength: 2,//search after two characters
select: function(event,ui){
}
});
和HTML标记
<input id="auto" name="company"/>
代码有什么问题?它不会生成自动完成选项..在php日志文件中没有错误。如何解决这个问题?
答案 0 :(得分:1)
源参数必须是字符串,数组或回调类型,以及“Defines the data to use”,而不是用于获取它们的页面。你应该使用类似的东西(见here for an example):
$("yourSelector").autocomplete({
source: function(req, add){
$.get("index.php?...", function(data) {
var returnData= [];
$.each(data, function(i, val){
returnData.push(val.property);
});
add(returnData);
});
}, [...]