无法读取属性addeventlistener

时间:2018-05-04 13:10:22

标签: javascript

我有2个单独的文件。一个html和一个js文件。我收到以下错误:

  

(index):118 Uncaught TypeError:无法读取属性' addEventListener'为null



资源

<小时/>

HTML

<form><input id="product1" name="product1" type="checkbox" value="12" />
<input id="product1" name="product1" type="checkbox" value="13" />
<input id="product1" name="product1" type="checkbox" value="14" />
<button type="submit">Subscribe</button></form>

JS

const form = document.querySelector('form');

form.addEventListener('submit', e => {
  e.preventDefault();

  const values = Array.from(document.querySelectorAll('input[type=checkbox]:checked'))
    .map(item => item.value)
    .join(',');

  console.log(`test.com/addtocart?${values}`);
});

1 个答案:

答案 0 :(得分:2)

这是因为当JS执行时你的HTML没有被加载。在您的HTML中添加 之后的,它将有效(在</body>之前)