我想要做的是使用自动完成功能通过jQueryUI的功能对结果进行分类。一些谷歌搜索后,我发现它有一个内置函数(http://jqueryui.com/demos/autocomplete/#categories),但该示例仅适用于本地数据源(JavaScript中的数组)。我正在处理远程数据源。 我的代码是在php中自动完成类别mysql不工作
<script>
$(function() {
$.widget("custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function(ul, items) {
var self = this,
currentCategory = "";
$.each(items, function(index, item) {
if (item.category != currentCategory) {
ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>");
currentCategory = item.category;
}
self._renderItem(ul, item);
});
}
});
$("#search").catcomplete({
delay:0,
source: "search.php",
select: function(event, ui){
alert(ui.item.label);
}
});
});
</script>
</head>
<body>
<label for="search">Search: </label>
<input id="search">
</body>
这里是的search.php
<?php
$conn = mysqli_connect("localhost","root","","test") or die(mysqli_error());
$searchTerm = $_GET['term'];
$sql = "select * from country_ref_table where country_code LIKE '%".$searchTerm."%' ORDER BY country_code ASC";
$result = mysqli_query($conn,$sql) or die(mysqli_error($conn));
$data = [];
while($row = mysqli_fetch_array($result))
{
$data[] = $row['country_code'];
$data[] = $row['country'];
}
echo json_encode($data);
?>
什么是你的问题? –
你忘了在查询中添加$ searchTerm。 –