添加到前端问题中的购物车和产品选项字段 - Magento


Add to cart and product options field in frontend issue - Magento

我在产品视图页面上遇到问题。我添加了两个单选按钮来隐藏产品选项并显示。但是当我选择隐藏并且自定义字段被隐藏时,我遇到了问题,当我按下添加到购物车按钮时,我收到此错误"请指定所需的产品选项。是否有任何字段为空的产品添加到购物车中?所以这个想法是在选择hideRadio.click(function() {时禁用验证

这是我的javascript代码,用于隐藏和显示单选按钮:

    var showRadio = jQuery('.product-options .display ul li:nth-child(2)').find('input');
    var hideRadio = jQuery('.product-options .display ul li:nth-child(1)').find('input');
        if(hideRadio){
             jQuery('.product-options dd, .product-options dt').hide();
             hideRadio.parents('dd').show();
                hideRadio.parents('dd').prevAll('dt:first').show();
        }
        hideRadio.click(function() {
          jQuery('.product-options dd, .product-options dt').hide();
          jQuery(this).parents('dd').show();
          jQuery(this).parents('dd').prevAll('dt:first').show();
        })
        showRadio.click(function() {
          jQuery('.product-options dd, .product-options dt').show();
        })

新更新:

将此代码添加到 if(hideRadio){

         hideRadio.parents('dd').prevAll('dt:first').remove();

但仍然相同的消息"请指定产品所需的选项。任何人?

你应该使用类来隐藏和显示元素(切换它们的可见性,如.hidden 或你方便的东西),因为正如 Jquery 文档中所说,不同的元素可以有不同的行为。

当你使用 hide() 时,元素及其子元素对其他 jquery 脚本变得"不可见"。我用 css 绝对负位置解决了这样的问题来隐藏我的容器(所有涉及 display:none 的内容,即使在 css 类中也使我的元素"不可见")