车是只更新一次使用jQuery和笨(Cart is updated only once using

2019-10-19 04:03发布

我的工作使用Ajax调用来更新更新Codeigntier车用jQuery。 这里是我的jQuery函数

$(function() {

    $('.cart_form select').on('change', function(ev) {

        var rowid = $(this).attr('class');
        var qty = $(this).val();

        var postData_updatecart = {
            'rowid' : rowid,
            'qty' : qty

        };

        //posting data to update cart

        $.ajax({

            url : base_url + 'bookings/update_booking_cart',
            type : 'post',
            data : postData_updatecart,

            beforeSend : function() {
                $('#cart_content').html('Updating...');

            },

            success : function(html) {
                //window.location.href = "postproperty.php?type="+suffix+'&page=page1';

                $('#cart_content').html(html);

            }
        });

    });

});

我有车查看文件

<div class="cart_form">
<?php echo form_open(base_url().'index.php/bookings/customerdetails', array('class' => 'bookings_form_customer', 'id' => 'bookings_form_customer')); ?>

<table cellpadding="6" cellspacing="1" style="width:100%" border="0">

<tr>
  <th style="text-align:left">Item Description</th>
  <th style="text-align:left">QTY</th>
  <th style="text-align:right">Item Price</th>
  <th style="text-align:right">Sub-Total</th>
</tr>

<?php $i = 1; ?>

<?php foreach ($this->cart->contents() as $items): ?>

    <?php echo form_hidden($i.'[rowid]', $items['rowid']); ?>

    <tr>
      <td>

        <?php echo $items['name']; ?>

            <?php if ($this->cart->has_options($items['rowid']) == TRUE): ?>

                <p>
                    <?php foreach ($this->cart->product_options($items['rowid']) as $option_name => $option_value): ?>

                        <strong><?php echo $option_name; ?>:</strong> <?php echo $option_value; ?><br />

                    <?php endforeach; ?>
                </p>

            <?php endif; ?>

      </td>
      <td>



            <select name="<?php echo $i.'[qty]'; ?>" class="<?php echo $items['rowid']; ?>">

            <?php
            for($tt=0; $tt<=10; $tt++)
            {
            ?>


            <option value="<?php echo $tt; ?>" <?php if($tt==$items['qty']) echo 'selected="selected"'; ?>><?php echo $tt; ?></option>

            <?php   
            }
            ?>
        </select>

      </td>



      <td style="text-align:right"><?php echo $this->cart->format_number($items['price']); ?></td>
      <td style="text-align:right">$<?php echo $this->cart->format_number($items['subtotal']); ?></td>
    </tr>

<?php $i++; ?>

<?php endforeach; ?>




<tr>
  <td colspan="2"> </td>
  <td class="right"><strong>Total</strong></td>
  <td class="right">$<?php echo $this->cart->format_number($this->cart->total()); ?></td>
</tr>

</table>

<p><?php echo form_submit('update_cart', 'Update your Cart'); ?></p>

</form>
</div>

事情正在尼斯。 但是,可以说,如果我有2个产品,如果我选择一个项目的数量从1到2,车被更新和更新的车用AJAX所示。 但是,如果我马上换另一个项目的数量,然后它不工作。

推车视图文件是类“cart_form”里面。

援助之手赞赏。

Answer 1:

我得到了一个答案。 您可以参考以下链接Ajax请求只能一次

要么

直接按照这个

通过更换jQuery代码部分

$(function() {   
    $(document).on( "change", "#bookings_form_customer select", function(ev) {
        // your code goes here
    }); 
});


文章来源: Cart is updated only once using Jquery and Codeigniter