3

構成可能な製品から一部のデータを取得する際に問題が発生しました。基本的に、「標準」のドロップダウン選択メニューは、製品ページで通常どおりいくつかを選択するように見えます。

私はオーバーレイで何か面倒なことをしています.jQuery .val() 関数を使用してこれらの選択オプションを「制御」します。

.val() 関数は、タグの「値」フィールドを取得する必要があります。

構成可能な製品情報を取得するときに、この値を取得する方法がわかりません...

次のような構成可能な製品に関する情報を取得しています。

    $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 は空白になっています。オプションボックスに提供する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>

必要な値が「どこに」あるかを見つけたと思います。

アプリ/コード/コア/メイジ/カタログ/モデル/リソース/製品/タイプ/構成可能/属性/コレクション.php

258行目、

                            $values[$item->getId() . ':' . $option['value']] = array(
                                'product_super_attribute_id' => $item->getId(),
                                'value_index'                => $option['value'],

値のインデックスは私が欲しいと思うものですが、それを取得する方法はわかりません

これをやり遂げる方法のアイデアはありますか?

4

1 に答える 1

1

firebug を使用して、「spConfig」という名前の変数の構造を確認します。構成可能な製品のデータはそこにあります。

jQuery().val() は、プロトタイプを使用してデフォルトの Magento で定義された選択アクションをトリガーしません。したがって、プロトタイプによる変更アクションをさらにトリガーすることができます。

于 2012-07-20T05:29:27.117 に答える