使用PHP和mysql自动完成一个值

时间:2013-08-13 16:18:03

标签: php jquery mysql jquery-ui autocomplete

最简单的方法是什么?

我可以在php文件中执行吗?

while($row = mysql_fetch_array($query)) {
    $results[] = array('label' => $row['name']);
}
echo json_encode($results);

如果我们运行此页面,输出如下:

[{"label":"moen"},{"label":"omid"}]

在另一个档案中:

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/smoothness/jquery-ui.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){ $("#artist").autocomplete({source: "processed.php" }); });
</script>

此代码有什么问题? 在字段中写下每个单词,它会显示所有值。 我有这个问题:http://jsbin.com/alaci5

2 个答案:

答案 0 :(得分:3)

似乎有很多问题,但对于初学者,你应该重写这个

$("#artist").autocomplete("processed.php");

在此:

$(document).ready(function(){ $("#artist").autocomplete("processed.php"); });

答案 1 :(得分:1)

您没有正确初始化自动完成功能:

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/smoothness/jquery-ui.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $("#artist").autocomplete({source: "processed.php" });
    });
</script>

并且您不包含任何jquery-ui css文件。因此,如果您不自己声明css样式,则必须包含主题。

此外,您的“processed.php”必须使用像json这样的有效格式。