首页 > 代码库 > 自写购物车的jquery

自写购物车的jquery

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
<script>
 
        $(function () {
            //格式化金额
            function fmoney(s, n) {
                n = n > 0 && n <= 20 ? n : 2;
                s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";//更改这里n数也可
 
确定要保留的小数位 
                var l = s.split(".")[0].split("").reverse(),
             r = s.split(".")[1];
                t = "";
                for (i = 0; i < l.length; i++) {
                    t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
                }
                return t.split("").reverse().join("") + "." + r.substring(0, 2);//保留2位小数  如果
 
要改动 把substring 最后一位数改动就可 
            } //end formatting money
            //加载的时候应该吧总金额算出来   !!!!!!!!!!!!!!!!写到这里了 2014晚上6月
 
3号
            function setTotle() {
                $sum = 0;
                $num = $("input[name=‘number‘]");
                $num.each(function () {
                    //格式化单价
                    $(this).parent().prev().text(fmoney($(this).parent().prev().text(), 2));
                    //计算小计金额
                    $(this).parent().next().text(fmoney((parseInt($(this).parent().prev().text()) *
 
parseInt($(this).val())), 2));
                    //计算总计 获取总价那里
                    $sum += parseInt($(this).parent().next().text());
                })//纠结的方法写完了 该写那个什么了(用户输入的js验证)
                $(‘#cart_amount_desc‘).text(fmoney($sum.toString(), 2));
            }//end set totle
 
            //加载计算值
            setTotle();
            //-号按钮操作
            $("input[name=‘minusNum‘]").click(function () {
                //获取元素的val然后-1  如果小于1 询问是否删除此此商品
                var $jian = parseInt($(this).next().val());
                //判断是否小于1
                if ($jian <= 1) {
                    if (confirm("是否删除此物品?")) {
                        alert(‘去cookie中把当前选中的id干掉,然后 1方案 重新加载数据 异步处理  2加
 
载的时候还得通知aspx 所以用jQuery把当前tr干掉 ‘);
                    }
                } else {
                    //数值见1
                    $(this).next().val($jian - 1);//文本中的数值-1                   
                    //获取小计的值 获取单价的值                  
                }
                setTotle();
            }) //end -
            //加号按钮操作
 
            $("input[name=‘addNum‘]").click(function () {
                var $jia = parseInt($(this).prev().val());
                //获取剩余数量
                var $lastnum = $(this).closest(‘li‘).prev().prev().text();
 
                //这里应该添加一个判断是否大过库存的信息
                if ($jia > $lastnum - 1) {
                    alert(‘对不起!库存不足我们会尽快补货。再次感谢您的支持您的支持‘);
                    $(this).prev().val($jia)
                } else {
                    $(this).prev().val($jia + 1);
                }
                setTotle();
            })//end jia
            //记录当前文本的值
            $value = http://www.mamicode.com/$("input[name=‘addNum‘]").prev().val();
            //记录剩余数量的值
            var $lastnums = $("input[name=‘addNum‘]").closest(‘li‘).prev().prev().text();
            $("input[name=‘addNum‘]").prev().focus(function () {
                $(this).val(‘‘);
            }).blur(function (event) {
                var $userInputNum = parseInt($(this).val());
                //判断是不是数字
                if (!isNaN($userInputNum)) {
                    //alert(‘是数字‘);
                    if (parseInt($userInputNum) <= 0) {
                        alert(‘您想送给我们点东西吗?‘);
                        $(this).val($value);
                    } else if ($userInputNum > parseInt($lastnums)) {
                        alert(‘对不起仓库数量不足。码农再次感谢您的支持!我们会尽快进货‘);
                        $(this).val($value);                       
                    }
                } else {
                    alert(‘本文本框仅限数字!‘);
                    $(this).val($value);
                }
                setTotle();
            })//end keyup
 
 
        })
    </script>