我正在尝试在我的网站上安装 jQuery UI 自动完成功能。我已经启动并工作了,但我希望它在有人单击选项时自动提交搜索表单。默认行为似乎是它只是用所选项目填写表单,然后用户必须单击提交按钮。我希望它像谷歌一样自动重定向。我正在运行 PHP 5.+ 和 MYSQL 5+ 以及 jquery.1.4.2 和 jqueryui.1.8.6。
这是javascript:
<script>
$(function() {
$( "#query" ).autocomplete({
source: "/scripts/autocomplete_handler.php",
minLength: 2,
select: function(event, ui) {
$('#query').val(ui.item);
$("#results").text(ui.item); // for testing purposes
$('#search_form').submit();
}
});
});
</script>
这是表格:
<form name="search_form" id="search_form" action="search.php" method="get">
<input type="text" name="query" id="query" />
<input type="submit" value="Search" />
</form>
<code id="results"></code>
如您所见,我正在尝试使用 $('#query').val(ui.item) 更改输入字段“查询”的值。问题是当我选择一个自动完成选项时,$_GET['query'] 变成了 [object Object]。即我的网站搜索字符串“[object Object]”而不是我单击的值。
在表单的底部有一个代码标签,ID 为“results”。我也无法用文本(ui.item)填充它。如果有人可以提供帮助,将不胜感激,我敢肯定,我不是唯一一个希望在其自动完成功能中使用这种类似 Google 的功能的人,但我在任何地方都找不到任何示例。