2016-03-08 100 views

回答

0

BC中的属性是加载项。你不能只获得属性。 您需要的是产品分组。

集团的产品一起

您可以创建同一类型,并将它们一起组的多个产品。查看一个产品的客户也可以通过从该组中选择另一个产品来查看可用变体。

检查分组如何在商业催化剂

从操作菜单,选择集团产品一起使用。

将产品从左侧面板移到右侧,选择默认产品,然后单击保存。

注意:默认产品是显示在目录中的唯一产品。所有其他分组产品均可通过分组产品下拉菜单获得。

1

我相信Daut可能在谈论别的事情,但我可能是错的。

使用您谈论的属性时,价格按默认价格加上属性价格计算。这就是为什么你看到220英镑作为你的总和,因为你已经知道了。

换句话说,您的默认价格是100英镑。如果你的总价是120英镑,那么你的Large属性实际上是20英镑。当它加在一起时,你的总价格将是120英镑。

当我使用的属性有不同的成本,我通常写我的属性为:

大+则BC插入价格]

在BC App Store中,有一对夫妇的插件(herehere)有助于使用属性。根据我的理解,他们的主要目的是控制信息如何显示给客户。我没有经验使用这些,但它可以帮助你。

1

您好,我已经在卑诗省的这个问题上创建了自己的方法,我也在Business Catalyst Forum上分享了它。对于选择下拉菜单或单选按钮使用下面的代码,您需要具备一定的代码修复能力,前段时间已经完成了,但如果有人希望将其改进为更清晰的方式,欢迎分享。

$(document).ready(function(){ 


StartDynamicPrice(); 
DoPriceChange(); 
}); 
var el_totalprice='#totalprice'; 
    var el_totalprice_gst='#totalprice_gst'; 
    //var el_attrselect='.catProdAttributeItem select'; 
    // uncomment if you want radio as well 
    var el_attrselect='.catProdAttributeItem select, .catProdAttributeItem input'; 
    var currencysymbol='£'; 

    Number.prototype.toMoney=function(decimals, decimal_sep, thousands_sep){ 
     var n = this, 
     c = isNaN(decimals) ? 2 : Math.abs(decimals), 
     d = decimal_sep || '.', 
     t = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep, 
     sign = (n < 0) ? '-' : '', 
     i = parseInt(n = Math.abs(n).toFixed(c)) + '', 
     j = ((j = i.length) > 3) ? j % 3 : 0; 
     return sign + (j ? i.substr(0, j) + t : '') + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : ''); 
    } 

    DoPriceChange=function(){ 
     var selected=''; 
     var newsubtotal=0; 
     $.each($(el_attrselect), function(i,e){ 
      selected=$(e).children(':selected').text(); 
      if (selected.indexOf(currencysymbol) != -1){ 
       newsubtotal+=parseFloat(selected.substring(selected.indexOf(currencysymbol)+1)); 
      }; 
     }); 
     newtotal=parseFloat($(el_totalprice).attr('base'))+parseFloat(newsubtotal); 
     newtotal_gst=newtotal+(newtotal*.10); 
     $(el_totalprice).html(currencysymbol+newtotal.toMoney()); 
     $(el_totalprice_gst).html(currencysymbol+newtotal_gst.toMoney()); 
    } 

    StartDynamicPrice=function(){ 
     $(el_totalprice).attr('base',$(el_totalprice).html().replace(currencysymbol,'').replace(' ,',''));  // set base price 
     $(el_attrselect).on('change',function(){ 
      DoPriceChange(); 
     }) 
    } 
/// END 
相关问题