我的最新一期是a)我无法弄清楚如何使用jqueryui autocomplete来允许我向上和向下滚动显示的选项,示例代码会很棒(我已经尝试autoFocus: true
)但是最大的问题是我的选择事件每10次触发一次,即使我在那里发出警报它似乎也很随机。目前我只能尝试使用鼠标事件选择原因a)。
我一直试图使用的最新代码如下:
$(document).ready(function(){
$("#message").autocomplete({
dataType: 'json',
source: function(request, response){
var str = $("#message").val();
var atindex = str.lastIndexOf('@');
if (atindex != -1 && str.length-atindex > 1) {
str = str.substring(atindex+1);
var spaceindex = str.indexOf(' ');
var lastname = ''
if (spaceindex != -1){
lastname = str.substring(spaceindex+1);
// if (lastname.indexOf(' ') != -1){lastname = lastname.slice(0,lastname.indexOf(' '));}
str = str.slice(0,str.indexOf(' '))+ ' ' + lastname;
}
$.post("utilities/atuser.php", {data: str}, function(data){
$("#suggestions").show();
//$("#usersuggest").html(data);
var json = $.parseJSON(data);
var test = new Array();
response($.map(json, function(item){
return {
label: item.label,
value: item.value,
}
})
);
}); }
},
appendTo: "#usersuggest" ,
autoFocus: true,
});
$( "#message" ).bind( "autocompleteselect", function(event, ui) {
$("#message").attr("value",ui.item.label);
$("#usersuggest").focus();
return false;
});
$( "#message" ).bind( "autocompleteopen", function(event, ui) {
$("#usersuggest").focus();
});
} );
谢谢! Shaananc
编辑:关于问题a)按键和按键现在在文本框中的值之间滚动,而不是突出显示列表中的选项,是否还有改变此行为?但是,使用向上和向下滚动输入的值是正确的,就像我点击选择我得到以下代码而不是显示在框中:*<a class="ui-corner-all" tabindex="-1">Test Name</a>*