0

最简单的方法是什么?

我可以在 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

4

2 回答 2

3

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

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

在这:

$(document).ready(function(){ $("#artist").autocomplete("processed.php"); });
于 2013-08-13T16:24:37.053 回答
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 这样的有效格式。

于 2013-08-13T16:23:19.530 回答