我的网站上有一个正常运行的自动填充功能框,我希望像SO中的“代码”自动填充一样工作。
看到下拉建议后,点击键盘上的tab
或enter
'接受'突出显示的选项,添加一个空格,然后将焦点移到该行的末尾输入下一个标签。
获取下拉列表后,点击tab
或enter
会使用当前建议替换文本框的全部内容,并且光标会选择所有文本(而不是插入空格并指向在最后一行)。
我如何实现这一回应?
这是我的javascript:
$(function() {
$( "#tags-field" )
// don't navigate away from the field on tab when selecting an item
.bind( "keydown", function( event ) {
if ( event.keyCode === $.ui.keyCode.TAB &&
$( this ).data( "autocomplete" ).menu.active ) {
event.preventDefault();
}
})
.autocomplete({
source: function( request, response ) {
$.ajax({
url: "<%= autocomplete_tags_name_questions_url %>",
dataType: "jsonp",
data: {
featureClass: "P",
style: "full",
maxRows: 12,
name_startsWith: request.term
},
success: function( data ) {
alert("Hi!"),
response( $.map( data, function( item ) {
return {
label: item.name, //+ (item.adminName1 ? ", " + item.adminName1 : "") + ", " + item.countryName,
value: item.name
}
}));
}
});
},
minLength: 2
});
});
首先,顶部的.bind
部分似乎不起作用。如何将代码here与上面的代码进行协调?