我正在尝试在我的网站上安装jQuery UI自动完成功能。我已经完成并且正在工作,但我希望它在有人点击某个选项时自动提交搜索表单。默认行为似乎是它只是用所选项填写表单,然后用户必须单击提交按钮。我希望它像Google一样自动重定向。我正在运行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)更改输入字段“query”的值。问题是,当我选择自动完成选项时,$ _GET ['query']变为[object Object]。即我的网站搜索字符串“[object Object]”而不是我点击的值。
在表单底部有一个id为“results”的代码标记。我也无法用文本填充(ui.item)。如果有人可以提供帮助,我将非常感激,我确信我不是唯一一个在自动完成时想要这类Google功能的人,但我在任何地方都找不到任何例子。
答案 0 :(得分:2)
在您的选择功能中尝试此操作:
$('#query').val(ui.item.value);