ایرج حسین زاده
3 سال پیش توسط ایرج حسین زاده مطرح شد
1 پاسخ

چطوری تو یه حلقه foreach مقداری از input بگیریم

من تو حلقه زیر

                                <div class="cart-item-list pl-3">
                                    @foreach($items as $item)
                                        @php
                                            $product = $item['product'];
                                            $productQty=$item['quantity'];

                                        @endphp

                                        <div class="cart-item">
                                            <div class="checkout-body">
                                                <button class="remove-from-cart" type="submit">
                                                    <i class="mdi mdi-close"></i>
                                                </button>
                                                <div class="product-thumbnail-img">
                                                    <a href="#">
                                                        <img src="{{str_replace('public','/public/storage/public',$product->image)}}" style="width: 100px;" alt="{{$product->name}}" class="img-fluid">
                                                    </a>
                                                </div>
                                                <div class="product-name">
                                                  {{$product->name}}
                                                </div>
                                                <div class="offcanvas-required-number-cart">
                                                    <div class="required-number before">
                                                        <div class="quantity">
                                                            <input id="input-quantity"  type="number" min="1" max="100" value="{{$productQty}}" step="1">
                                                            <div class="quantity-nav">

                                                                <div class="quantity-button quantity-up" onclick="addToCartt({{$product->id}});">+</div>
                                                                <div class="quantity-button quantity-down" onclick="subToCart({{$product->id}});">-</div>
                                                            </div>
                                                            <div class="quantity-nav">
                                                            </div>
                                                        </div>
                                                    </div>
                                                    <div class="price">
                                                        @if($product->has_discount)

                                                        <del>
                                                    <span >{{$product->cost * $productQty}}<span>
                                                        تومان</span>
                                                    </span>
                                                        </del>
                                                        @endif
                                                        <ins>
                                                    <span >{{$product->cost_with_discount * $productQty}}<span>
                                                        تومان</span>
                                                    </span>
                                                        </ins>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>

                                @endforeach
                                    <!--product list-->
                                </div>

برای گرفتن مقدار value در جا کد زیرو نوشتم

function addToCartt(productId)
    {

        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });

        var quantity;
        if($('#input-quantity').length){
            quantity=document.getElementById('input-quantity').value;
            quantity++;
            console.log(quantity);

        }

        $.ajax({
            type: 'POST',
            url: "/cart/"+productId,
            data:
                {
                    quantity: quantity
                },
            success:function (data) {

                $('#total_items').text(data.cart.total_items);
                $('#total_amount').text(data.cart.total_amount);
                $('#total').text(data.cart.total+'تومان ');

            }

        });

    }

مشکل اینه مقدار value که من میگیرم به خاطر اینکه حلقه تکرار شده و ای دی اون یکیه تو اینپورت پس همیشه مقدار که میدم فرق نمیکنه به یک روال بالا میره مثال من تعداد یک محصول رو 5 تا میزم 5 تا میره ولی زمانی که یک محصول دیگر رو میخوام تعدادش رو بکنم 2 تا از 5 شروع میشه این رو چطوری حل کنم


ثبت پرسش جدید
رضا جهانگیر
تخصص : Full-Stack Developer
@rezajahangir 3 سال پیش مطرح شد
0

سلام به شما دوست عزیز.
با استفاده از id باید یونیکش کنید.
موفق باشید.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام