可配置产品,选择框“值”字段。Magento

3

您在处理可配置产品时遇到了问题,基本上在我的产品页面上,“标准”下拉选择菜单似乎正常选择一些内容。

我正在使用一个覆盖层进行一些琐碎的操作,并将使用jQuery的.val()函数“控制”这些选择选项。

.val()函数需要获取标签的'value'属性。

现在,我无法找到如何在获取可配置产品信息时获取此值...

我正在按照以下方式获取有关可配置产品的信息:

    $attrs  = $_product->getTypeInstance(true)->getConfigurableAttributesAsArray($_product);
    foreach($attrs as $attr) {
        $options = $attr['values'];
        foreach($options as $option) {
            echo "<p class='swatchie' id='".$attr['attribute_id']."' title='".$attr[]."'>{$option['store_label']}</p><br />";
        }
    }

正如您所看到的,标题中的attr为空,这是我需要提取选项值的地方。Magento为选项框提供的HTML如下:
      <option value="">Choose an Option...</option><option value="41" price="0">King</option><option value="42" price="540">Super King +£540.00</option></select>

我想我已经找到了我需要的值“在哪里”,
app/code/core/mage/catalog/model/resource/product/type/configurable/attribute/collection.php 第258行,
                            $values[$item->getId() . ':' . $option['value']] = array(
                                'product_super_attribute_id' => $item->getId(),
                                'value_index'                => $option['value'],

我认为我想要的是价值指数,但我不知道如何获取它。你有什么想法如何实现这一点吗?
1个回答

1

使用Firebug查看名为'spConfig'的变量结构,可在其中找到可配置产品的数据。

请注意,jQuery().val()不会触发默认Magento使用prototype定义的选择操作。因此,您可能需要通过prototype另外触发更改操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接