当前位置:编程学习 > JS >>

简单的前端js+ajax 购物车框架(入门篇)

 

其实,一直想把自己写的一些js给总结下,也许是能力有限不能把它完美结合起来。只能自己默默的看着哪些代码,无能为力。

今天在公司实在没有事做,突然就想到写下商城的购物车的前端框架,当然我这里只有购物车的增删改查,也许写的并不是那么完善,但最重要的是一个入门,也希望js达人给些建议,好让我更上一个台阶。

HOHO~~~开始咯:

Js:

 

//为了省事,就没写自己的js ajax了 用了jquery的,当然你也可以添加到jquery的扩展方法内,哈哈,我太懒了,所以就写这里了。

var _$ = { AJAX: function (urlparm, d, beforecall, successcall) {

    $.ajax({

        url: "ashx/ajax_shoppingCart.ashx?" + urlparm,

        data:d,

        dataType:"Json",

        type: "POST",

        before: beforecall,

        success:successcall

    });

}

};

(function () {

    var Jusoc = {};

    Jusoc = {

        _inital: function () { window.Jusoc = Jusoc; },

        Base: {},

        DAO: {},

        BLL: {},

        UI: {}

    }

    Jusoc.Base = {

        Validate: {

        }

    }

//AJAX()

Jusoc.DAO = {

    Shopping: {

        Get: function (beforecall, successcall) {

            _$.AJAX("action=get", null, beforecall, successcall);

        },

        Remove: function (pid, beforecall, successcall) {

            _$.AJAX("action=remove", { "pid": pid }, beforecall, successcall);

        },

        Add: function (pid, pcount, beforecall, successcall) {

            _$.AJAX("action=add", { "pid": pid, "pcount": pcount }, beforecall, successcall);

        },

        Set: function (pid, pcount, beforecall, successcall) {

            _$.AJAX("action=set", { "pid": pid, "pcount": pcount }, beforecall, successcall);

        }

    }

}

Jusoc.BLL = {

    Shopping: (function () {

        var Data = null; 

        var isLock = false;

        var _successcall = null;

        var _beforecall = null;

        function Unlock() {

            isLock = false;

        }

        function Lock() {

            isLock = true;

            if(Data&&Data !=null)

            {

            Data = null;

            }

        }

        function CallBackFunction(xhr) {

            Unlock();

//            if (xhr[0] == "ERROR") {

 

//                alert(xhr[1]);

//                return;

//            }

//            else if (xhr[0] == "SUCCESS") {

//                Jusoc.BLL.Shopping.SetData(xhr[1]);

//            }

 

            Jusoc.BLL.Shopping.SetData(xhr);

           

            if (_successcall != null && _successcall) {

                _successcall.call(window, xhr);

            }

            _successcall = null;

        }

        function PrepareRequst(beforecall, successcall) {

            if (isLock) {

                return false;

            }

            Lock();

            if (beforecall != null && beforecall) {

                _beforecall = beforecall;

            }

            if (successcall != null && successcall) {

                _successcall = successcall;

            }

        }

        return {

            Get: function (beforecall, successcall) {

                if(PrepareRequst(beforecall, successcall)==false)return false;

                Jusoc.DAO.Shopping.Get(_beforecall, CallBackFunction);

            },

            Remove: function (pid, beforecall, successcall) {

           

补充:web前端 , JavaScript ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,