2016-08-15 6 views
0

が、私はきちんと私のウェブサイトに機能している数量入力フィールドを持つaddtocartボタンを持っている(下の画像を参照してください):オプション量フィールドを選択して数量の入力項目を正しく置き換える方法は?

Working add to cart

私は入力フィールドの例2のために導入しaddtocartボタンを押して、私のカートは2つのアイテムで更新されます。

しかし、ドロップダウンリストで数量入力フィールドを変更して、訪問者がドロップダウンリストで許可された数量の1つを選択できるようにしたいとします。私はドロップダウンフィールドを適切に設定することができますが、addtocartボタンをクリックすると(下記の画像を参照)、何も起こりません。

Not working select field

私はどこかにJavaScriptで「選択」で「入力」に変更する必要があるとします。または、数量やボタンのjavascriptが正しく送信されていない可能性がありますか?

私はいくつかの試行の後に動作させることができません。

誰でも私にこれを手伝ってもらえますか?私は非常に満足している(常にJavaScriptと苦労)

ありがとう。

入力フィールドのためのHTMLコード(作動)がある:適切に設定 "オプションを選択" フィールドのHTMLコード、

<input type="hidden" value="<?=$product['product_id']?>" size="2" name="product_id" /> 
     <input type="hidden" value="<?=$product['gift_products_id']?>" size="2" name="gift_products_id" /> 
     <? if($product['quantity']!==$product['total']){ ?> 
     <input type="text" value="1" size="2" name="quantity" /> 
     <a class="btn btn-primary addtocart" lang="<?=$product['product_id']?>" href="javascript:void(0)" ><span><?=$_['gr_m_add_to_cart']?></span></a> 
     <? } ?> 

なく動作していない。

<input type="hidden" value="<?=$product['product_id']?>" size="2" name="product_id" /> 
<input type="hidden" value="<?=$product['gift_products_id']?>" size="2" name="gift_products_id" /> 
<? if($product['quantity']!==$product['total']){ ?> 
<select name="quantity" class="form-control_cart" id="input-quantity" value="1" > 
    <?php foreach (range(1, $product['quantity'], 1) as $stap) { 
      if ($stap == 1) { 
       echo "<option value='$stap' selected>$stap</option>"; 
      } else { 
       echo "<option value='$stap'>$stap</option>"; 
      } 
     } ?> 
</select> 
<a class="btn btn-default addtocart" style="margin-top:-4px" lang="<?=$product['product_id']?>" href="javascript:void(0)" data-toggle="tooltip" title="<?=$_['gr_m_add_to_cart']?>"><i class="fa fa-shopping-cart"></i></a>      
<? } ?> 

のJavaScript addtocartボタンに使用されるコード:

$('.addtocart').click(function() { 
id = $(this).attr('lang'); 
$.ajax({ 
    url: 'index.php?route=checkout/cart/add', 
    type: 'post', 
    data: $('#row_'+id+' input[type=\'text\'], #row_'+id+' input[type=\'hidden\']'), 
    dataType: 'json', 
    beforeSend: function() { 
     //$('#button-cart').button('loading'); 
     $('.addtocart').button('loading'); 
    }, 
    complete: function() { 
     //$('#button-cart').button('reset'); 
     $('.addtocart').button('reset'); 
    }, 
    success: function(json) { 
     $('.alert, .text-danger').remove(); 
     $('.form-group').removeClass('has-error'); 

     if (json['error']) { 
      if (json['error']['option']) { 
       for (i in json['error']['option']) { 
        var element = $('#input-option' + i.replace('_', '-')); 

        if (element.parent().hasClass('input-group')) { 
         element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); 
        } else { 
         element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); 
        } 
       } 
      } 

      if (json['error']['recurring']) { 
       $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>'); 
      } 

      // Highlight any found errors 
      $('.text-danger').parent().addClass('has-error'); 
     } 

     if (json['success']) { 
      if (!Journal.showNotification(json['success'], json['image'])) { 
       $('.breadcrumb').after('<div class="alert alert-success success">' + json['success'] + '<button type="button" class="close" data-dismiss="alert">&times;</button></div>'); 
      } 

      $('#cart-total').html(json['total']); 

      $('html, body').animate({ scrollTop: 0 }, 'slow'); 

      $('#cart ul').load('index.php?route=common/cart/info ul li'); 
     } 
    } 
}); 
}); 

ちょうどあなたが欲しい、これまでクラスまたはIDで、データへのselect要素を追加

data: $('#row_'+id+' input[type=\'text\'], #row_'+id+' input[type=\'hidden\'], #row_'+id+' select'), 

data: $('#row_'+id+' input[type=\'text\'], #row_'+id+' input[type=\'hidden\']'), 

へ:

答えて

1

あなたはこのコード行を変更する必要があります。

+0

こんにちはササン、ありがとうございます!あなたのコードは正しく動作しています。私は後でスクリプトを見ると、いつもそんなに論理的に思えます....ありがとう、SabKo – SabKo

関連する問題