我正在使用jQueryUI autocomplete()
函数,我无法弄清楚如何在选择项目时提交表单。
我认为问题出在select: event
上,但我是jQueryUI的新手,无法弄清楚如何使其发挥作用。
这是我的代码,否则可以正常工作:
<script type="text/javascript">
$(document).ready(function() {
$(function() {
$( "#search_box" ).autocomplete({
source: function(request, response) {
$.ajax({ url: "<?php echo site_url('autocomplete/suggestions'); ?>",
data: { term: $("#search_box").val()},
dataType: "json",
type: "POST",
success: function(data){
response(data);
},
select: function (event, ui) {
$(event.target).val(ui.item);
$('#search_form').submit();
return false;
}
});
},
minLength: 1
});
});
});
</script>
非常感谢任何帮助!
答案 0 :(得分:4)
安德鲁是对的,请参阅他提到的the fiddle。如果将带有“ui.item”的部件切换为“ui.item.value”,则select:function()现在可以正常工作。
答案 1 :(得分:0)
是的有效
除非您希望在操作调用的页面中获取服务器端脚本中的值...
目前,无法通过鼠标或键盘选择自动提交表单的原因以及$(event.target).val(ui.item.value)
行,无法提供$_POST
数组中的值
答案 2 :(得分:0)
是的,爱丽丝也是对的。您只需在onclick函数中添加此行:
$('#search_form').submit();
其中search_form是表单的ID。