Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja

Auto update shopping cart

Halo agan-agan yg master..

saya ada pertanyaan bagaimana caranya update otomatis jumlah/qty ketika customer menambahkan/menekan tombol +/- tanpa klik update tombol..

berikut scriptnya

 <form method="post" action="cart-update.php">
<input type="text" name="cart_id" value="<?php echo $row['cart_id']?>" style="display: none;"></input>
<input type="text" name="trxsubid" value="<?php echo $row['trxsubid']?>" style="display: none;"></input>
<input type="text" name="category_id" value="<?php echo $row['category_id']?>" style="display: none;"></input>
<input type="text" name="brand_id" value="<?php echo $row['brand_id']?>" style="display: none;"></input>
<input type="text" name="color_id" value="<?php echo $row['color_id']?>" style="display: none;"></input>
<input type="text" name="item_id" value="<?php echo $row['item_id']?>" style="display: none;"></input>
<center>
	<button type="submit" class="qtyminus" field="quantity" name="minus" id="value-minus2">-</button>
	<input type="text" name="quantity" class="qty" id="value2" value="<?php echo $row['qty']?>" style="width: 50px; text-align: center;" readonly></input>
	<button type="submit" class="qtyplus" field="quantity" name="plus"  id="value-plus2">+</button>
<div class="simpleCart_shelfItem">
<br>
<button type="submit" class="w3ls-cart" title="update cart"><span class="fa fa-refresh" aria-hidden="true">  <b>Update Cart</b></span></button>
</center>
</div>
</form>

javascript untuk menambahkan qty dan onchange total:

 <script type="text/javascript">
$(function() {
	$('.qtyplus').click(function(e){
		e.preventDefault();
		fieldName = $(this).attr('field');
		//Fetch qty in the current elements context and since you have used class selector use it.
		var qty = $(this).closest('tr').find('.qty');
		 //var qty = $(this).closest('tr').find('input[name='+fieldName+']');
 		var currentVal = parseInt(qty.val());
			if (!isNaN(currentVal)) {
				qty.val(currentVal + 1);
			} else {
				qty.val(0);
			}
			//Trigger change event
			qty.trigger('change');
		 });

	$(".qtyminus").click(function(e) {
		e.preventDefault();
		fieldName = $(this).attr('field');
		//Fetch qty in the current elements context and since you have used class selector use it.
		var qty = $(this).closest('tr').find('.qty');
		//var qty = $(this).closest('tr').find('input[name='+fieldName+']');
		var currentVal = parseInt(qty.val());
			if (!isNaN(currentVal) && currentVal > 1) {
				qty.val(currentVal - 1);
			} else {
				qty.val(1);
			}

			//Trigger change event
			qty.trigger('change');
			});
			//Bind the change event
	$(".qty").change(function() {
		var sum = 0;
		var sum1 = 0;
		var total = 0;
		var total2 = 0;
		var total3 = 0;
		var dsc = <?php if($discount==''){$discount=0;echo $discount;}else{echo $discount;} ?>;
		var serv = <?php echo $ship ?>;

		$('.price_jq').each(function () {
			var price = $(this);
			var count = price.closest('tr').find('.qty');
			sum = (price.html() * count.val());
			total = total + sum;
			price.closest('tr').find('.cart_total_price').html(sum);
			total2 = (total - dsc) +serv;
			total3 = total2;
	});

	$('#total').html(total);
	$('#total2').html(total2);
	$('#dsc').html(dsc);
	$('#total3').html(total3);
}).change(); //trigger change event on page load
});
</script>

avatar inginbelajar
@inginbelajar

95 Kontribusi 21 Poin

Diperbarui 7 tahun yang lalu

3 Jawaban:

perjelas lagi pertanyaannya, btw ente script kiddy atau buat dari nol ?

avatar KepalaSekolah
@KepalaSekolah

82 Kontribusi 69 Poin

Dipost 7 tahun yang lalu

@KepalaSekolah dari nol dan hanya pakai javascript untuk tombol -/+ agar qty bertambah.. yg saya ingin tanyakan bangaimana bisa update qty tanpa harus menekan tombol update dengan kata lain ketika tekan tombol -/+ langsung update ke database.. begitu pak kepala sekolah..

avatar inginbelajar
@inginbelajar

95 Kontribusi 21 Poin

Dipost 7 tahun yang lalu

Pas tombol update di klik kan ngehit ke spek/endpoint yang fungsinya buat update. Bikin aja pas tombol + atau - di klik ngehit juga ke spek itu.

avatar dalikewara
@dalikewara

351 Kontribusi 261 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban