Javascript jquery自动完成不显示结果

Javascript jquery自动完成不显示结果,javascript,jquery,Javascript,Jquery,当我键入未显示的结果时,我尝试使用jquery filter by id category自动完成,如下图所示: 当我点击tab network时,我得到了如下图片所示的数据: 这是我的javascript代码: <script type="text/javascript"> $(function() { $(".keyword").autocomplete({ source: function(request, response) { $.ajax({

当我键入未显示的结果时,我尝试使用jquery filter by id category自动完成,如下图所示:

当我点击tab network时,我得到了如下图片所示的数据:

这是我的javascript代码:

<script type="text/javascript">
$(function() {
  $(".keyword").autocomplete({
    source: function(request, response) {
      $.ajax({
          url: "search/autocomplete",
          type: "GET",
          dataType: "json",
          data: {'id':1},
          success: function(data) {
              response($.map(data, function(item) {
                return {
                  label: item.name,
                  value: item.id
              };
              }));
          }
      });
    },
    select:function(event,ui) {
      $(".keyword").val(ui.item.label);
      return false;
    },
    minLength: 2,
  }).bind('focus', function () {
    $('.ui-autocomplete').css('z-index','9999').css('overflow-y','scroll').css('max-height','300px');
    // $('.ui-autocomplete').css('background','#09121a').css('color','#fff');
    // $('.ui-menu .ui-menu-item-wrapper').css('padding','11px 1em 3px 1.4em !important');
    // $(this).autocomplete("search");
    // var btncategory = $('.btn-category').width();
    // var left = '-'+btncategory+'px';
  });
});
</script>

$(函数(){
$(“.keyword”).autocomplete({
来源:功能(请求、响应){
$.ajax({
url:“搜索/自动完成”,
键入:“获取”,
数据类型:“json”,
数据:{'id':1},
成功:功能(数据){
响应($.map)(数据、功能(项){
返回{
标签:item.name,
值:item.id
};
}));
}
});
},
选择:功能(事件、用户界面){
$(“.keyword”).val(ui.item.label);
返回false;
},
最小长度:2,
}).bind('focus',function(){
$('.ui autocomplete').css('z-index','9999').css('overflow-y','scroll').css('max-height','300px');
//$('.ui autocomplete').css('background','#09121a').css('color','#fff');
//$('.ui menu.ui菜单项包装器').css('padding','11px 1em 3px 1.4em!important');
//$(此)。自动完成(“搜索”);
//var btncategory=$('.btn category').width();
//变量左='-'+BTN类别+px';
});
});

如果我输入“a”-我什么也看不到,但当我删除“a”-我看到所有三个。因此,jQuery似乎不知道应该在object.name中查找值。

正如Tan Duong所说,您的响应只包含名为
value
的属性。它无法找到
名称
id
,因此您的结果显示的是空白数据

将“成功”功能更改为:

success: function(data) {
          response($.map(data, function(item) {
            return {
              label: item.value,
              value: item.value
          };
          }));
      }

它应该是label:item.value,value:item.value,因为您的响应只是返回值。