在 WooCommerce 的产品页面中,有时用户在按 Ctrl 或 Shift 键的同时单击“添加到购物车”按钮,以便在新选项卡/窗口中打开结果页面。
在这种情况下,我需要重新加载当前页面。我该怎么办?
考虑“添加到购物车”按钮提交表单。
首先使用提交事件表单上的
event.preventDefault()
停止正常提交,然后使用“添加到购物车”按钮上的单击事件执行任何您想要的操作。
你可以这样做:
function handleOnsubmit(event) {
event.preventDefault()
}
function handleOnclick(event) {
if (event.ctrlKey || event.shiftKey) {
location.reload();
} else {
document.getElementById("myForm").submit();
}
}
<form action="https://stackoverflow.com/" id="myForm" onsubmit="handleOnsubmit(event)">
<input type="text" name="name">
<button type="submit" onclick="handleOnclick(event)">Add to cart</button>
</form>