我有许多产品设置多个选择选项集,与“所需”复选框勾选。
当这些选项集使用“矩形”显示模式时,验证工作正常。单击add to cart告诉我,请选择一个选项,并且不会将表单向前发送。
但是,使用“多重选择”显示模式根本不进行验证--请求触发并将项添加到购物车中。我可以去结账买东西。这是一个巨大的潜在问题,因为客户可以在不指定大小、颜色等的情况下购买商品,而我们无法完成订单。
查看AJAX请求的有效负载,而不是发送属性值,“选择选项”作为名为attribute[###]
的表单数据字段的值发送。
我已经在本地服务器(stencil start
)和将主题推送到商店本身之后对此进行了测试。我使用了自定义内部模板主题和BigCommerce提供的默认Cornerstone主题。
发布于 2016-06-23 11:45:16
通过查看Cornerstone 1.2.2中的templates/components/products/options/set-select.html
文件,似乎可以通过以下更改确保验证正常运行:
将form-field
类放置在父<div>
上,并在<select>
上添加form-select form-select--small
类。
但是,这只解决了客户端的验证问题,除非选择了选项,否则不允许用户提交表单。无效的AJAX请求仍然允许在没有选项的情况下将产品添加到购物车中,并进行签出,即使选项是按需要标记的。
https://stackoverflow.com/questions/37997142
复制