简体   繁体   English

将多个产品添加到购物车(一次多个发布按钮)

[英]Adding multiple products to cart (multiple post buttons at once)

Is it possible to post multiple add to cart buttons in javascript with single button click? 只需单击一下按钮,就可以在JavaScript中发布多个“添加到购物车”按钮吗? Here is my code for single add to cart buttons: 这是我的单个添加到购物车按钮的代码:

<div class="buy_now" style="margin: 1em 0;">
    <?php echo functions::form_draw_form_begin('buy_now_form', 'post'); ?>
    <?php echo functions::form_draw_hidden_field('product_id', $product_id); ?>

   <?php if (!$catalog_only_mode) { ?>
    <div class="form-group">
      <label><?php echo language::translate('title_quantity', 'Quantity'); ?></label>
      <div style="display: flex">
        <div class="input-group">
          <?php echo (!empty($quantity_unit['decimals'])) ? functions::form_draw_decimal_field('quantity', isset($_POST['quantity']) ? true : 1, $quantity_unit['decimals'], 1, null) : (functions::form_draw_number_field('quantity', isset($_POST['quantity']) ? true : 1, 1)); ?>
          <?php echo !empty($quantity_unit['name']) ? '<div class="input-group-addon">'. $quantity_unit['name'] .'</div>' : ''; ?>
        </div>
        <div>
          <?php echo '<button class="processed" name="add_cart_product" value="true" type="submit"'. (($quantity <= 0 && !$orderable) ? ' disabled="disabled"' : '') .'>'. language::translate('title_add_to_cart', 'Add To Cart') .'</button>'; ?>
        </div>
      </div>
    </div>
    <?php } ?>

    <?php echo functions::form_draw_form_end(); ?>
  </div>

And I have another button, which I would like to add all items at once(it's doesnt do anything right now): 我还有另一个按钮,我想一次性添加所有项目(现在不执行任何操作):

<?php echo '<button id="triggerAll" class="btn" name="add_cart_product_all" value="true" type="submit">'. language::translate('title_add_to_cart', 'Add To Cart') .'</button>'; ?>

No, you aren't able to make multiple POST requests with standard browser call. 不,您无法使用标准浏览器调用发出多个POST请求。 You'll have to do it with JavaScript which makes Ajax POST calls on the same page. 您必须使用JavaScript在同一页面上进行Ajax POST调用。

Found a solution: 找到一个解决方案:

<script>
$('#triggerAll').on('click',function(){
    $('.processed').trigger('click');
});
</script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM