我的页面出现错误,我相信由于php if语句导致条件表未显示。
错误:TypeError:document.getElementById(“ count2”)为空
源文件:https://www.mysite.com/js/clocktimer.js
线:43
我有条件声明:
<?php if ( $this->session->userdata('days_to_challenge') > 0 ) : ?>
<table id="mytable" border="0">
<tr>
<td align="center" colspan="4"><div class="numbers" id="count2" style="padding: 10px; "></div></td>
</tr>
<?php endif; ?>
和我的js代码导致错误:
document.getElementById('count2').style.display="block";
document.getElementById('count2').style.width="390px";
...
即,挑战的天数已为零。挑战已经开始,所以我没有显示倒数计时器表。
防止此类错误的最佳方法是什么?
最佳答案
在尝试摆弄元素之前先进行测试,以查看该元素是否存在。
var count2 = document.getElementById('count2');
if (count2) {
count2.style.display="block";
count2.style.width="390px";
}