Magento:如何从捆绑产品中获取选定的捆绑选项标题和价值?

时间:2013-10-16 12:09:08

标签: php jquery magento magento-1.7

我正在尝试在产品详细信息页面上获取选定的捆绑选项标题和值。

单位颜色*:Antelope Audio Zodiac Digital to Anologue Converter +£0.00

我使用下面的代码,但它返回选项列表而不是选中的选项值,但不是单位颜色

之类的标题
$bundled_product = new Mage_Catalog_Model_Product();
    $bundled_product->load($_product->getId());
    $selectionCollection = $bundled_product->getTypeInstance(true)->getSelectionsCollection(
        $bundled_product->getTypeInstance(true)->getOptionsIds($bundled_product), $bundled_product
    );
    $bundled_items = array();
    foreach($selectionCollection as $option)
    {
        echo "<pre>";
        print_r($option);die;
        $bundled_items[] = $option->product_id;
    }

请查看下图。 enter image description here

所以请建议我如何获得头衔和选定的价值。

由于

1 个答案:

答案 0 :(得分:1)

免责声明:此代码段适用于magento演示网站上的捆绑产品: http://demo.magentocommerce.com/my-computer.html

如果我在浏览器网址栏中输入带有前缀javascript:和后缀generate_options_label_and_value()的以下代码段,则可以正常使用单选按钮。如果您需要更多扩展案例(支持下拉列表/复选框),请告诉我们。这只是一个快速片段:

function generate_options_label_and_value(){ 
    var generated_html = '';
    $$("#product-options-wrapper>dl>dt").each( function (dt){ 
        if(dt.next('dd').select('input:checked[type=radio]').length > 0 ){
            generated_html += dt.select("label")[0].innerHTML;
            generated_html += dt.next('dd').select('input:checked[type=radio]')[0].next('span').innerHTML;
        }
    });
    if(!$('selected_options_div')){
        $$('.add-to-cart')[0].insert({ top : "<div id='selected_options_div'></div>"});
    }
    $('selected_options_div').update(generated_html);
}

这是用原型

写的