【发布时间】:2015-05-11 20:20:59
【问题描述】:
我正在做一个项目,其中我有用户列表自动完成。
当我尝试将自动完成选择的值推送到全局数组时,当我在自动完成功能之外执行 console.info(usernames) 时,我得到一个空列表。
var usernames=[];
$(document).ready(function(){
$(function(){
$( "#users" ).autocomplete({
source: function( request, response ) {
$.ajax({
type: "GET",
url: "getUserFromDb.php",
dataType: "json",
data: {
term: request.term
},
success: function( data ) {
response( data );
}
});
},
minLength: 2,
select: function(event,ui){
usernames.push(ui.item.value);
}
});
console.info(usernames);
});
});
自动完成的来源返回正确的列表,并且选择也有效,因为如果我在自动完成选择中执行 console.info(usernames):当我选择不同的值时,列表将更新。
【问题讨论】:
-
请转储您的完整代码,仅发布相关部分。
-
你最好使用
var usernames=[];而不是var usernames=new Array; -
@LShetty 这不会解决我的问题
-
@Ollikas 我也没有这么说!同样,不要有多个
ready处理程序。$(document).ready(function(){==$(function(){=> fiddle -
我认为我的代码有更多重复和不必要的代码,但我想得到我的问题的答案...
标签: javascript jquery jquery-ui autocomplete