Javascript Jquery自动完成没有显示自动完成下拉列表?
我有一个搜索输入字段-当用户搜索任何字符串时,它将显示自动完成下拉列表。但是,由于某些原因,它没有显示“自动完成”下拉列表。但当我找到我的基本url并在地址栏中以/JobSearchItem.xhtml路径结尾时,它将只返回json格式的结果。但是,它不显示任何自动完成下拉列表。有人能检查一下我是如何自动完成的吗。谢谢 PS:如果你们需要我展示更多的代码,请告诉我 这是我的代码:Javascript Jquery自动完成没有显示自动完成下拉列表?,javascript,jquery,autocomplete,Javascript,Jquery,Autocomplete,我有一个搜索输入字段-当用户搜索任何字符串时,它将显示自动完成下拉列表。但是,由于某些原因,它没有显示“自动完成”下拉列表。但当我找到我的基本url并在地址栏中以/JobSearchItem.xhtml路径结尾时,它将只返回json格式的结果。但是,它不显示任何自动完成下拉列表。有人能检查一下我是如何自动完成的吗。谢谢 PS:如果你们需要我展示更多的代码,请告诉我 这是我的代码: $(function() { var base_url = "http://localhost:
$(function() {
var base_url = "http://localhost:8080/myapp/";
$( "#searchTextField" ).autocomplete({
source: function( request, response ) {
$.ajax({
url: base_url + "JobSearchItem.xhtml",
dataType: "json",
data: {
q: request.searchValue
},
success: function( data ) {
response( $.map(data, function(v,i) {
return { jobClassCD: v.jobClassCD, jobClassTitle: v.jobClassTitle };
})
);
}
});
});
});
json响应
[{"jobClassCD":"1000","pGrade":"0","jobGroup":"","jobClassTitle":"ABC DEVELOPER"}
您可以尝试这样做:
$(function() {
var base_url = "http://localhost:8080/myapp/";
$.ajax({
url: base_url + "JobSearchItem.xhtml",
dataType: "json",
data: {
q: request.searchValue
},
success: function(data) {
var newAray = $.map(data, function(v, i) {
return {
jobClassCD: v.jobClassCD,
jobClassTitle: v.jobClassTitle
};
$("#searchTextField").autocomplete({
source: newArray
});
});
}
});
});
看起来您在需要返回响应的函数中使用了错误的输入。在我的前端搜索输入中,对吗?这是我的html输入:
谢谢您的回答。但它没有起作用。当我使用地址栏时,我是否应该向您显示json结果?我是否需要在jquery中使用“GET”参数才能查看下拉列表?请给我json响应,然后尝试我的更新代码。可能存在与承诺相关的问题,这意味着您需要在初始化自动编译器之前等待ajax响应。此外,我尝试更新的答案仍然没有显示。因为当我使用更新的代码搜索时,在控制台中我得到:ReferenceError:request未定义