function onclick_remove(r) { if (confirm("確認刪除麼!此操做不可恢復")) { var out_momey = $(".out_momey");
var input_val = $(r).parent().prev().children().eq(1).val(); var span_html = $(r).parent().prev().prev().children().html();
var out_add = parseFloat(input_val).toFixed(2) * parseFloat(span_html).toFixed(2); var reduce = parseFloat(out_momey.html()).toFixed(2)- parseFloat(out_add).toFixed(2); console.log(parseFloat(reduce).toFixed(2)); out_momey.text(parseFloat(reduce).toFixed(2)) $(r).parent().parent().remove(); //這裏添加ajax到後臺的代碼,還須要動態的sku_id var sku_id = $(r).attr('data-href'); var href = "?c=user&a=remove_goods&sku_id="+sku_id; // alert(href); // return false; $.ajax({ cache: false, type: "GET", url : href, // traditional:true, // data: {order : serializeStr}, //注意這裏的寫法 success: function(msg){ // alert(msg); // if(msg=="OK"){ // alert(msg); // // Alert(50,"刪除成功"); // // location.reload(); // }else{ // alert(msg); // alert("添加失敗"); // } } }); return false; } }
再具體展開每一個商品項的代碼。php
上面的js代碼主要是爲了實現右側的刪除寶貝功能。業務流程是:html
1.先獲取商品的單價乘於商品的數量=小計。ajax
2.而後把紅色區域的div刪掉。數組
3.總金額-=小計。安全
4.向php後臺發送一個ajax請求session
如下是ajax刪除商品的代碼,即從session數組中把它移除。<?php session_start(); $goods_id = $_GET['goods_id']; $arr = $_SESSION['gwc']; //從購物車中刪除商品 unset($arr[$goods_id]); //若是把購物車最後一件東西都刪除了,則刪除購物車 if(empty($arr)){ unset($_SESSION['gwc']);//刪除session數組中下標爲gwc的元素。 //$_SESSION是一個數組,unset是對數組的操做的某個元素操做。就是刪除那個元素。unset()函數並不能直接的釋放變量,只是變量計數器減1,,當計數器爲0的時候會觸發回收。特別是當變量被引用的時候,只會銷燬變量,但不會釋放內存。爲了確保信息的安全性,能夠用 unset() 清空 session 的內容。 }else{ $_SESSION['gwc'] = $arr;//把數組裏面的內容傳給session,把那些商品信息存進session } echo "OK";//msg傳回來的 exit(); ?>