我通过使用“onsubmit”将函数链接到表单来解决这个问题
<form onSubmit="return handleClick()">
<input type="checkbox" id="product1" name="product1" value="12">
<input type="checkbox" id="product2" name="product1" value="13">
<input type="checkbox" id="product3" name="product1" value="14">
<button type="submit">Subscribe</button>
</form>
然后将现有JS代码包装到javascript函数中:
function handleClick(){
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);
}