我正在使用MaterializeAutoComplete从我的数据库表中获取建议列表。我将源代码作为php文件提供,在其中我回显json文件。下面是代码。没用了。为什么?
索引.php
<div class="input-field ">
<input type="text" name="t" id="t" class="autocomplete">
</div>
<script>
$(function () {
$('input.autocomplete').autocomplete({
source: 'suggest.php?key=%QUERY'
});
});
</script>
建议.php
<?php
$key=$_GET['key'];
$array = array();
$conn = mysqli_connect('localhost', 'root', '', 'home_services');
$query= "select * from worker where lname LIKE '%{$key}%'";
$res = mysqli_query($conn, $query);
if($res->num_rows>0){
while($row=$res->fetch_assoc()){
$lname[]= trim($row["lname"]);
}
}
echo json_encode($lname);
?>
1条答案
按热度按时间3phpmpom1#
materialize autocomplete没有
source
自动加载提供的url的选项。当您查看文档时,您会发现您必须像这样初始化自动完成:
这个
data
选项接受带有可选图标字符串的字符串名称。您需要在初始化自动完成之前提取自动完成数据,并在初始化时向其提供数据:
此外,您还需要调整您的
suggest.php
以data
自动完成选项。所以你需要像这样修改你的代码:edit:还可以用名称初始化数组
$array
但将内容添加到一个名为$lname
. 你应该换衣服$array = array();
至$lname = array();