我有一个表单输入,当文本输入时,它会更新一个div。这就是我使用的:
$('#CampaignTitle').keyup(function() {
$('#titleBar').text(this.value);
});
除了我还喜欢隐藏div的能力(我知道如何让它从隐藏开始)时,表格输入中没有文字。
换句话说,当有人输入表格输入时,会出现一个div,输入输入的文字会出现在div中。如果用户再次清除输入,则div消失。
抱歉,我是JS的新手:)
答案 0 :(得分:2)
进行测试以查看文本框的值是否大于0:
$('#CampaignTitle').keyup(function() {
if($(this).val().length > 0)
{
$('#titleBar').text($(this).val()).show();
}
else
{
$('#titleBar').hide();
}
});
这里的关键是if($(this).val().length > 0)
。
答案 1 :(得分:0)
这样的事情应该有效:
$('#CampaignTitle').keyup(function() {
var $titleBar = $('#titleBar');
if(this.value.length == 0) {
$titleBar.hide();
}
else {
if($titleBar.is(":hidden")) {
$titleBar.show();
}
$titleBar.text(this.value);
}
});
它有点冗长,并且有一些方法可以让它变得不那么冗长,但是既然你还在学习,我想这会让你大致了解发生了什么。 is(":hidden")
检查可以省略;即使已经可见,它也会在show()
上运行$titleBar
。
答案 2 :(得分:0)
试试这个
$('#CampaignTitle').keyup(function() {
$('#titleBar').text(this.value).show();
if (this.value==''){ $('#titleBar').hide() }
});
答案 3 :(得分:0)
$('#CampaignTitle').keyup(function() {
if (this.value){
$('#titleBar').text(this.value).show();
}
else {
$('#titleBar').hide();
}
});