在我的选项面板中,我有一个部分,用户可以输入他们的Twitter用户名。目前,如果该字段的值为空,则Twitter图标会在我的网站上消失,这很好,因为这意味着div类已成功隐藏。但是,当我在字段中输入用户名时,div类仍然保持隐藏状态。
这是我目前的jQuery:
<script type="text/javascript">
$(document).ready(function() {
if($('mytheme_twitter:empty')){$('.twitter').hide();}
});
</script>
我认为必须遗漏一些东西。我需要添加其他功能吗?如果是的话,我该把它放在哪里?我有点像jQuery noob。
答案 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
。
希望这有帮助。