我有一个表单输入,当输入文本时,它会更新一个div。这是我使用的:
$('#CampaignTitle').keyup(function() {
$('#titleBar').text(this.value);
});
这非常好用,除了我还想要隐藏div的能力(我知道如何让它开始隐藏),当表单输入没有文本时。
换句话说,当有人在表单输入中键入内容时,将出现一个div,并且输入到输入中的文本将出现在div中。如果用户再次清除输入,则div将消失。
对不起,我是JS新手:)
发布于 2011-10-07 23:27:03
执行一个测试以查看文本框值的长度是否大于0:
$('#CampaignTitle').keyup(function() {
if($(this).val().length > 0)
{
$('#titleBar').text($(this).val()).show();
}
else
{
$('#titleBar').hide();
}
});
这里的关键一行是if($(this).val().length > 0)
。
发布于 2011-10-07 23:26:07
像这样的东西应该是有效的:
$('#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")
检查;这将在$titleBar
上运行show()
,即使它已经可见。
发布于 2011-10-07 23:26:32
尝尝这个
$('#CampaignTitle').keyup(function() {
$('#titleBar').text(this.value).show();
if (this.value==''){ $('#titleBar').hide() }
});
https://stackoverflow.com/questions/7693742
复制