首页

基于JS中定义commonLibrary分别对$.ajax的传参请求检查checkParameter区分回调函数处理代码视力下载

标签:传参,javascript,回调,对象原型链,oop,面向对象,组件     发布时间:2017-11-22   

一、前言

基于在JAVASCRIPT定义面向对象的公共组件,如针对传递入参校验,区分回调函数逻辑处理,下面结合具体示例说明如下

二、代码

1.定义面向对象的组件(所在文件为common_lib.js),代码如下

window.$16cache = window.$16cache || {};@b@ @b@$16cache.commonLibrary = (function () {@b@@b@        return{@b@@b@            checkParameter : function(exist,nothing){@b@@b@                if(location.search){@b@@b@                    exist();                    @b@@b@                }else{@b@@b@                    nothing();@b@@b@                }@b@@b@            },@b@@b@            getURLParameter : function(name){@b@@b@                var ret = (new RegExp("[\\?&]" + name + "=([^&#]*)")).exec(location.search);@b@@b@                return ret ? ret[1] : "";@b@@b@            }              @b@@b@        }@b@@b@})();

2.index.html具体用例如下

<!doctype html>@b@<html>@b@<head>@b@<meta charset="UTF-8" />@b@<title>Document</title>@b@<script src="jquery-1.9.0.js" type="text/javascript" charset="utf-8"></script>@b@<script src="common_lib.js" type="text/javascript" charset="utf-8"></script>@b@</head>@b@<body>@b@<script>@b@   $(function(){@b@    //说明1. 页面加载完成后执行的函数@b@       $16cache.commonLibrary.checkParameter(@b@           function(){@b@                    init_withParameter();@b@           },@b@           function(){@b@               init_withoutParameter();@b@           }@b@       );@b@       @b@            //说明2. URL存在参数则调用以下函数@b@            //例如 http://127.0.0.1:8020/HTML/index.html?module=login@b@       function init_withParameter(){@b@                document.writeln("Parameter exist");@b@                document.writeln("<br>");@b@                document.writeln("module =" + $16cache.commonLibrary.getURLParameter("module"));@b@                //GET 请求例子@b@                $.ajax({@b@                    type: "GET",@b@                    url: "../../rest/dojo/mnt/server/getserver/" + $16cache.commonLibrary.getURLParameter("module"),@b@                    dataType: "json",@b@                    contentType: "application/json"             @b@                }).done(function(data){@b@                    //获取数据成功后的代码写在这里...@b@                }).fail(function(data){@b@                    //获取数据失败后的代码写在这里...@b@                });           @b@                @b@                //POST 请求例子@b@                var Pobj = {@b@               "p1": "",@b@               "p2": "1",@b@               "PageIndex": "3",@b@               "PageSize": "10"@b@                };@b@       @b@                $.ajax({@b@                    type: "POST",@b@                    url: "../../rest/dojo/mnt/server/list",@b@                    data: JSON.stringify(Pobj),@b@                    dataType: "json",@b@                    contentType: "application/json"@b@                }).done(function(data){@b@                    //获取数据成功后的代码写在这里...@b@                    var items = $.makeArray(data["data"]);@b@                }).fail(function(){@b@                    //获取数据失败后的代码写在这里...@b@                });@b@            }@b@       @b@            //说明2. URL不存在参数则调用以下函数@b@            //例如 http://127.0.0.1:8020/HTML/index.html@b@            function init_withoutParameter(){@b@                document.writeln("Parameter does not exist");@b@                //...@b@            }@b@@b@   })@b@</script>@b@</body>@b@</html>