点击文本同时隐藏两个CSS ID元素失效,求正确实现代码
解决方法
直接在函数内同时编写两行隐藏代码即可,你遇到的问题大概率是代码书写时出现了语法错误(比如引号转义失误、ID拼写错误),以下是正确的实现代码:
<h5 onclick="flightFunction()">One Way</h5> <script type="text/javascript"> function flightFunction() { // 隐藏returnDate元素 document.getElementById("returnDate").style.display = "none"; // 隐藏rtField元素 document.getElementById("rtField").style.display = "none"; } </script>
需要确认的几个关键点:
- 页面中确实存在ID为
rtField的元素,且ID拼写完全一致(注意区分大小写) - 代码中的引号使用正确,script标签内直接用双引号即可,无需HTML转义的
" - 没有其他JS代码定义了同名的
flightFunction函数,导致当前函数被覆盖
如果还是无法生效,可以添加调试代码排查问题:
function flightFunction() { let returnEl = document.getElementById("returnDate"); let rtFieldEl = document.getElementById("rtField"); console.log(returnEl, rtFieldEl); // 打开浏览器控制台,查看两个元素是否能被正确获取 if(returnEl) returnEl.style.display = "none"; if(rtFieldEl) rtFieldEl.style.display = "none"; }
内容的提问来源于stack exchange,提问作者user3426808
相关产品推荐
相关产品推荐

