一か念う执着が 2021-10-27 22:49 采纳率: 94.1%
浏览 23
已结题

这是我在其他地方找到的一篇文章不错,希望对各位有帮助

我正在尝试创建一个即时搜索框。当用户开始在搜索框中输入内容时,它会触发一个JavaScript事件来隐藏博客文章(#home),而将显示搜索结果(下面不包括脚本的这一部分)。但是,用户清除搜索框后,由于display的#home仍设置为none,他们只能看到空白页。

如何使JavaScript检测到用户清除了#search-input处的输入并再次使#home显示true?

document.getElementById('search-input').oninput = function() {
document.getElementById('home').style.display = 'none';
};
最佳答案

您可以通过input事件侦听器执行此操作。要隐藏#home元素,请添加条件以检查输入是否具有值。如果没有,则将其隐藏。要将其恢复原状,您需要做相反的事情,但前提是#home被隐藏:

const searchInput = document.getElementById('search-input');
const home = document.getElementById('home');

searchInput.addEventListener('input', function() {
if (!this.value) {
home.style.display = 'none';
} else if (this.value && home.style.display === 'none') {
home.style.display = 'block';
}
});

<input type="text" id="search-input" />
Sample Content
  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 11月4日
    • 创建了问题 10月27日

    悬赏问题

    • ¥50 AI大模型精调(百度千帆、飞浆)
    • ¥15 关于#c语言#的问题:我在vscode和codeblocks中编写c语言时出现打不开源文件该怎么办
    • ¥15 非科班怎么跑代码?如何导数据和调参
    • ¥15 福州市的全人群死因监测点死亡原因报表
    • ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
    • ¥15 系统2008r2 装机配置推荐一下
    • ¥500 服务器搭建cisco AnyConnect vpn
    • ¥15 悬赏Python-playwright部署在centos7上
    • ¥15 psoc creator软件有没有人能远程安装啊
    • ¥15 快速扫描算法求解Eikonal方程咨询