未捕获的TypeError:无法读取null错误的属性'addEventListener'

时间:2017-12-21 21:03:29

标签: javascript html

美好的一天,请问如何防止html文件尝试 访问eventListener意味着另一个html文件 使用window.location后。两个html文件都使用相同的外部 js文件 。感谢

我的代码

的index.html

ggplot(genus_counts, aes(x=Genus, y=value, fill=variable))+
  geom_bar(stat="identity", position="dodge")+
  scale_y_sqrt(limits = c(0, 15), breaks = (0:4)^2)

post.html文件

<body>

<form id=form>
    <input type="button" value="submit">
</form>

<script src="main.js"></script>
</body>

main.js文件

<body>
  <script src="main.js"></script>
</body>

1 个答案:

答案 0 :(得分:0)

解决此问题的一种方法是将事件侦听器包装在检查路径名的if语句周围。

&#13;
&#13;
if ( window.location.pathname === '/index.html' ) {
  // do stuff in here that you want to execute for the index.html page
  document.getElementById("form").addEventListener("click", function(e){
      console.log("hello");
      window.location = "post.html";
      e.preventDefault();
  });
}
&#13;
&#13;
&#13;