如果输入值为空,我需要隐藏div类的jQuery是什么?

时间:2012-10-08 16:25:04

标签: jquery html hide

在我的选项面板中,我有一个部分,用户可以输入他们的Twitter用户名。目前,如果该字段的值为空,则Twitter图标会在我的网站上消失,这很好,因为这意味着div类已成功隐藏。但是,当我在字段中输入用户名时,div类仍然保持隐藏状态。

这是我目前的jQuery:

<script type="text/javascript">
$(document).ready(function() {
if($('mytheme_twitter:empty')){$('.twitter').hide();}   
});
</script>

我认为必须遗漏一些东西。我需要添加其他功能吗?如果是的话,我该把它放在哪里?我有点像jQuery noob。

2 个答案:

答案 0 :(得分:4)

首先,:empty 是此用例的错误选择器。

  

:empty选择所有没有子元素的元素(包括文本节点

更改逻辑以检查输入的值是否为空。

if($('.mytheme_twitter').val() === '' ){$('.twitter').hide();} 

你需要写一个更改事件来处理这种情况..

$('mytheme_twitter') has to be   $('#mytheme_twitter')  If ID OR $('.mytheme_twitter') If Class

//

 <script type="text/javascript">
    $(document).ready(function() {

        if($('.mytheme_twitter').val() == '' ){$('.twitter').hide();}  

        $('.mytheme_twitter').on('change' , function() {

             if( this.value != ''){

                   $('.twitter').show(); 
              }
              else{
                   $('.twitter').hide(); 
             }
        });
      });
    </script>

答案 1 :(得分:1)

我会做这样的事情:

<script type="text/javascript">
    $(document).ready(function () {
        var twitter = $(".twitterTextBox").val();
        if(twitter == "") {
            $(".twitterIcon").hide();
        } else {
            $(".twitterIcon").show();
        }
    });
</script>

这仅在页面加载时检查输入。如果您希望Twitter图标在文本框中输入内容后显示,那么您必须添加一个事件监听器,例如onkeyup

希望这有帮助。