javascript面向对象编程
首先创建一个result对象:
1 var result={ 2 dgName:'#dg_test',//页面datagrid 3 treeName:'#tree_test',//页面tree名称 4 params:{parma:'', parmb:'', parmc:''}//全局变量 5 initPage:function(){ 6 result.functionA();//函数A 7 result.functionB();//函数B 8 }, 9 10 functionA:function(){ 11 $(result.dgName).datagrid({ 12 //初始化datagrid 13 }); 14 },
15 };
js代码从上向下执行后,会定义当前页面各种所用到的组件名称(如datagrid列表,Tree,combo等等),声明全局变量:可以通过result.params.parama的方式调用,后续执行函数,实现页面刷新,函数内部可以用ajax实现页面异步刷新:
1 functionB:function(){ 2 var requestdata={ 3 api:"requestA", 4 parA:result.params.parma,//调用result对象里声明的参数parma 5 }; 6 $.ajax({ 7 type:"POST", 8 url:"data.ashx",//后台接受请求的ashx文件 9 data: JSON.stringify(requestdata), 10 contentType: "application/json; charset=utf-8", 11 dataType: "json",//传入后台的数据类型 12 success: function (json) { 13 //callback(json); 14 }, 15 error: function () { 16 //异常处理 17 }, 18 }); 19 },
在页面多请求的情况下,为避免代码冗余,多次ajax代码重复,可以将ajax请求封装进js文件,页面直接调用即可,
创建javascript对象可以实现页面局部刷新,减少代码重复,逻辑思路清新。