3 つのオプションを持つラジオ ボタンのカスタム オプションがあります。たとえば、オプション 2 を選択すると、単純な JSalert()
に、この選択に関するメッセージが表示されます。すべてではなく、1 つだけです。
私が見つけた問題は、JS で生成された ID とクラス名を持つすべての製品と互換性を持たせるために、私のコードがすべての製品で確実に機能するようにするために従うべきパターンがほとんどないことです。
その要素を探して で 2 番目の要素を取得するだけでそれを行うことができますがgetElementByTag()
、今後数か月で認定に向かい、私の慣行が確実に維持されるようにしたいので、Magento に適した方法でそれを行う必要があります- 「回避」するのではなく、Magento と連携してください。
コード例 (Magento によってオンザフライで生成される ID、クラス、および名前)
<dd class="last">
<ul id="options-54765-list" class="options-list">
<li>
<input type="radio" class="radio validate-one-required-by-name product-custom-option" onclick="opConfig.reloadPrice()" name="options[54765]" id="options_54765_2" value="210674" />
<span class="label"><label for="options_54765_2">Colour Edge </label></span>
<script type="text/javascript">$('options_54765_2').advaiceContainer = 'options-54765-container';$('options_54765_2').callbackFunction = 'validateOptionsCallback';</script>
</li>
<li>
<input type="radio" class="radio validate-one-required-by-name product-custom-option" onclick="opConfig.reloadPrice()" name="options[54765]" id="options_54765_3" value="210673" />
<span class="label"><label for="options_54765_3">Gallery Wrap </label></span>
<script type="text/javascript">$('options_54765_3').advaiceContainer = 'options-54765-container';$('options_54765_3').callbackFunction = 'validateOptionsCallback';</script>
</li>
<li>
<input type="radio" class="radio validate-one-required-by-name product-custom-option" onclick="opConfig.reloadPrice()" name="options[54765]" id="options_54765_4" value="210672" />
<span class="label"><label for="options_54765_4">White Edge </label></span>
<script type="text/javascript">$('options_54765_4').advaiceContainer = 'options-54765-container';$('options_54765_4').callbackFunction = 'validateOptionsCallback';</script>
</li>
</ul>
</dd>