请帮忙。我正在尝试将 Shopify 购物车集成到 Shopify 本身之外。基本上,我需要提交一份表单并防止其重定向,这样我就可以允许客户在结账之前添加他想要的所有商品,而不是一个。
我尝试了两种方法:
仅使用链接的第一种方法:
<a href="http://statevintage.myshopify.com/cart/add" onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href; var v = document.createElement('input'); v.setAttribute('type', 'hidden'); v.setAttribute('name', 'id'); v.setAttribute('value', '281514140'); f.appendChild(v); var r = document.createElement('input'); r.setAttribute('type', 'hidden'); r.setAttribute('name', 'return_to'); r.setAttribute('value', 'back'); f.appendChild(r); f.submit(); return false;">BUY NOW</a>
第二种方法使用带有 return_to 的表单提交:
<form action="http://statevintage.myshopify.com/cart/add" method="post">
<input type="hidden" name="id" value="281514140" />
<input type="hidden" name="return_to" value="back" />
<input type="submit" value="BUY NOW" />
</form>
无论我做什么,即使使用 return false 脚本,我仍然会被发送到结账!
这家伙使用相同的表单功能,只是带有数量选项,http://sageinvoices.co.uk/但由于某种原因,直到你真正结账之前,它永远不会离开他的网站。这应该是因为
<input type="hidden" name="return_to" value="back" />
我已经关注了我能找到的每个维基,但我无法阻止表单重定向到我的结账页面。我计划生成购物车计数和商品显示,然后允许用户在需要时结账。我也无法为我的客户更改平台!它必须适用于shopify。我也不能使用他们的应用程序或 iframe 方法。该网站必须跨浏览器兼容且速度快。
最佳答案
如果您 f.submit()
表单,它会执行其说明的操作:提交表单;-)
可以阻止默认的提交行为,例如使用 jQuery:
$('#target').submit(function() {
alert('Handler for .submit() called.');
return false;
});
关于javascript - 停止表单操作重定向或 href 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15261365/