2015-02-10 55 views
0

我正在使用jQuery UI自动完成功能搜索并通过ajax返回一些值。目前我使用这样的:隐藏结果jquery列表自动完成

  $(".myautocomplete").autocomplete(
      { 
       source: "myajaxSourceAsJson", 
       minLength: 1, 
       delay: 500, 
       response: function(event, ui) { 
        // Do something with the response data 
       } 

      }); 

我的JSON-对象不仅包含“值”和“标签”,但也有一些更多的对象,我正在使用的自动完成的响应这。现在,我仍然可以在html输入字段下面看到自动完成列表,我只想隐藏它,因为在这种情况下我不这样做。我知道我也可以用“普通”ajax请求和关键事件创建相同的功能,但我需要自动完成的最小长度和延迟功能。是否有可能在输入字段下隐藏结果列表?我试着用“display:none;”对于一些自动完成类,但它很可能被自动完成本身覆盖。

我也试过

.ui-autocomplete {height:0px; overflow-y:scroll;溢出x:隐藏;}

但是,然后有一个白色像素的小区域可见每次有人触发在该领域内的搜索。

回答

0

现在我仍然看到html输入字段 下方的自动完成列表,我只是想隐藏它,因为在这种情况下我不这样做。

我不确定我是否完全理解您的问题...如果您只是想隐藏它,为什么要自动完成功能?

但我可以推荐使用匿名函数创建为您自动完成数据..

$(".myautocomplete").autocomplete(
      { 
       source: function(request, response){ 
       // do some data manipulation here... 
       // perhaps return an empty list... 
       }, 
       minLength: 1, 
       delay: 500, 
       response: function(event, ui) { 
        // Do something with the response data 
       } 

      });