2016-11-10 6 views
0

私は、私のバリアントが、Shopifyが提供するデフォルトのドロップダウンではなく、次のイメージのように表示するようにしています。ドロップダウンの代わりにShopify Variantチェックボックス

enter image description here

私は現在、次のコードを使用していますが、バスケットに何かを追加しようとしたときにはエラーをスローします。エラーが「パラメータがないか無効です:必要なパラメータがありません:無効なID:

 <form action="/cart/add" method="post" enctype="multipart/form-data"> 
      {% for variant in product.variants %} 
      {% if variant.available == true %} 
       <fieldset class="group"> 
       <ul class="checkbox"> 
        <li> 
        <input type="checkbox" value="{{variant.id}}"> 
         <label>{{ variant.title }} for {{ variant.price | money_with_currency }}</label> 
        </input> 
        </li> 
       </ul> 
       </fieldset> 
      {% else %} 
      <option disabled="disabled"> {{ variant.title }} - sold out!</option> 
      {% endif %} 
      {% endfor %} 
      <input type="submit" name="add" id="add" class="inpost-buy w-button" value="Add to Bag →"></input> 
     </form> 

答えて

2

このチェックボックスの名前属性がありません。

name="id"である必要があります。また


(あなたは本当にそれがname="id[]"する必要がありますチェックボックスではなくラジオボタンを持つように決定されている場合)、これは有効なHTMLコードではありません。

<input type="checkbox" value="{{variant.id}}"> 
    <label>{{ variant.title }} for {{ variant.price | money_with_currency }}</label> 
</input> 

あなたがラベルを持つことができません入力の内部にある。他の方法でOKになります。


そして、あなたは、それ以上を選択し使用していないので、このためのポイントは、ありません。

<option disabled="disabled"> {{ variant.title }} - sold out!</option>

+0

あなたが変異体は1以上であれば、私は唯一のオプションを表示する方法を知っていますか?例えば1つのサイズしか表示されていない場合は、それを表示する点はありません。 – user3082823

+0

'{%if product.options.size> 1%}'を使うことができます。 – drip

関連する問題