在字段中键入文本时隐藏div,并在删除文本时再次显示该文件

时间:2016-03-07 14:07:57

标签: jquery html

当有人开始在搜索字段中输入文字时,我正在使用下面的代码来隐藏div。

$('#search').keypress(function() {
$('#hello').hide();
$(this).focus();
});

我的问题是,我不知道当清除搜索字段中的文本时,如何再次显示隐藏的div。 有人可以帮助或指导我吗?

jsfiddle here

6 个答案:

答案 0 :(得分:0)

您可以测试字段是否为空(当 keyup 时):

$('#search').keyup(function() {
if($(this).val() == ''){
  $('#hello').show();
}
else{
 $('#hello').hide();
 $(this).focus();
}

});

答案 1 :(得分:0)

$('#search').keyup(function() {
    var searchTerm = $(this).val();
    var searchTermLength = searchTerm.length;
    if (searchTermLength == 0) {
        $('#hello').show()
    } else {
        $('#hello').hide()
    };
});

答案 2 :(得分:0)

以下是使其有效的代码

$('#search').keyup(function() {
    if($(this).val() == ''){
        $('#hello').show();
    }else{
        $('#hello').hide();
    }
});

这是更新的JSFiddle代码

答案 3 :(得分:0)

$('#search').keyup(function() {
    if ($("#search").val().length != 0) {
        $('#hello').hide();
    } else {
        $("#hello").show();
    }
});

答案 4 :(得分:0)

这就是诀窍

    $('#search').keyup(function() {
        $(this).val().length ? $('#hello').hide() : $('#hello').show();
    });

答案 5 :(得分:0)

改为使用change()函数,只有当字段的值完全改变时才会调用它。

$('#search').change(function() {
if($(this).val() == ''){
    $('#hello').show();
}else{
    $('#hello').hide();
}

});