0

无法弄清楚我在这里做错了什么。如果搜索字段中没有任何内容或单击站点的任何区域时,我希望自动完成 div 关闭,类似于 onblur。相反,div 保持存在。这是我的代码:

$(document).ready(function(){

$(".search").keyup(function() 
{
var searchbox = $(this).val();
var dataString = 'searchword='+ searchbox;

if(searchbox=='')
{
}
else
{

$.ajax({
type: "POST",
url: "search.php",
data: dataString,
cache: false,
success: function(html)
{

$("#display").html(html).show();


    }

});
}return false;    

});
});

“显示”是我的自动完成 div。

4

1 回答 1

0

尝试这个 -

看示范

var handler = function(event){    // to hide "#display" on elsewhere click
if($(event.target).not("#display *") || $(".search").val().length != 0) return;    
    $("#display").hide();
}

$(document).on("click", handler);

在其他地方点击时,上面带有隐藏displaydiv 的处理程序。如果在里面点击display它不会隐藏。

$(".search").keyup(function(){
     var searchbox = $(this).val();
     if(searchbox.length === 0)  // if field is blank hide div again.
           $("#result").hide();
....  // remaining code ----
于 2013-05-13T04:58:52.140 回答