-1

我正在使用 jQuery 1.9.1。面临自动完成的问题。在 JSON ajax 调用中填充自动完成值。当我尝试使用自动完成事件时,它不起作用并给出了一些奇怪的响应。从 JSON 调用中获取值后。自动完成仅在两次警报后填充值。在这两个警报中,我正在检查我从 JSON 调用中得到的值。在我的第一个警报中,值为空,但在第二个调用中存在值。如果我没有发出警报。一个额外的 html ajax 调用正在以 screenload 操作的名称提交。这我可以在 Firefox 萤火虫中看到。附上代码和截图(参考案例2:没有警报的情况下)

var airports = "";
$.ajax({
url: "populateAirportCodes?fragments="+element.target,
type: "POST",
data: JSON.stringify(org),
contentType: "application/json",
success: function(data) {                             
airports = data;   
}
});
$(".origincode").autocomplete({                                     
source: airports                                                                        
});   
4

2 回答 2

1
var airports = "";
$.ajax({
url: "populateAirportCodes?fragments="+element.target,
type: "POST",
data: JSON.stringify(org),
contentType: "application/json",
success: function(data) {                             
$(".origincode").autocomplete({                                     
source: data ,
minLength: 1,

});  

}
});
于 2013-08-02T07:47:35.267 回答
0

试试这个

var airports = "";

$(".origincode").autocomplete({                                     
  source:"populateAirportCodes?fragments="+element.target,                                                               
});   

应采用这种格式的响应

  [{
    value: "jquery",
    label: "jQuery",
   }];
于 2013-08-02T08:06:25.377 回答