easyui 项目fun公共方法

本文详细介绍了EasyUI项目中fun.js文件所包含的公共方法,这些方法在项目开发中起到了重要的辅助作用,提升代码复用性和效率。通过对函数的封装和模块化,实现了对常见操作的便捷调用。
摘要由CSDN通过智能技术生成

fun.js

 

//var RP=getRootPath();
var sys_Root='http://www.baidu.com';
var sys_Path=window.location.protocol+'//'+window.location.host;
//页面路径
var Sys_RootPath=sys_Path+'/html';//系统路径
//接口根路径
var Backstage=sys_Root+'/api.php';
//BUId
var fun_DataBUId='00000000-0000-0000-0000-000000000000';
//var Sys_UserCode='${Sys_UserCode}';//用户Code
//var Sys_UserText='${Sys_UserText}';//用户名字
//var OPS_Path='${OPS_PATH}'+"Home/";  //服务器路径
//var SYSIns='${SYSIns}';//存档Uid
//var LoginIns='${LoginIns}';//登录实例


function bug(s){
   console.log(s);
}

function fun_getParmsFun(v){
   return eval(v);
}

function PageUrl(url){
   //return RP+url+".html?t=" + new Date().getTime();
   //return RP+'c?p='+url+'&t=' + new Date().getTime();
   //return Sys_RootPath+url+'?t=' + new Date().getTime()+'&Params='+ToParams(param);
   return Sys_RootPath+url+'?t=' + new Date().getTime();
}
function getUrlHost(){
   //return RP+url+".html?t=" + new Date().getTime();
   //return RP+'c?p='+url+'&t=' + new Date().getTime();
   return Sys_RootPath;
}

function RuleUrl(){
   //return PageUrl(url);
   return Sys_RootPath+'r';
}

/**
 * 判断为空
 * @param a 输入对象
 * @returns
 */
function IsBlank(a){
   if(IsUndefined(a)){//未定义
      return true;
   }else if(a.toString()==""){//空
      return true;
   }else if(IsObj(a)){
      return jQuery.isEmptyObject(a);//空对象
   }else{
      return false;
   }
}
/**
 * 判断是否定义
 * @param a 输入对象
 * @returns
 */
function IsUndefined(a){
   return (a==undefined || a===undefined || a.toString()=='undefined' || typeof(a)=='undefined' || a==null)
}

function IsNum(p){//是否数字
   var idReg=/^(-?\d+)(\.\d+)?$/;
   return idReg.test(p);
}

/*function getRootPath(){
    var curWwwPath=window.document.location.href;//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
    var pathName=window.document.location.pathname;//获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
    var pos=curWwwPath.indexOf(pathName);
    var localhostPaht=curWwwPath.substring(0,pos);//获取主机地址,如: http://localhost:8083
    var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1);//获取带"/"的项目名,如:/uimcardprj
    return projectName;
   return '{RootPath}';
}*/

/*function GetMeta(){//获得HTML头
   var meta=$("meta[property=SystemInfo]");
   return meta;
}*/

/*function SetPageTitle(){
   var meta=GetMeta();
   document.title = meta.attr("SysTitle");
}*/

/*//获取登录信息
function GetLogin(){
   //var meta=GetMeta();
   //return eval('('+Decode(meta.attr("LoginInfo"))+')');
   //return SysLogin;
   var SysLogin='{SysLogin}';
   return eval('('+decodeURIComponent(SysLogin)+')');
}*/


//获得URL中ReqUrl值
function GetReqUrl(){
   var url=GetUrl("ReqUrl");
   if(IsBlank(url)){
      /*var meta=GetMeta();
      url=Decode(meta.attr("ReqUrl"));*/
      url=Sys_RootPath+ReqUrl;
   }
   return url;
}

//获得URL中某参数的值
function GetUrl(name){
   var url=location.href;
   if(IsBlank(name))return url; 
   if(url.substring(url.length-1)=="#"){url=url.substring(0,url.length-1);}
   var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s|&|$)", "i"); 
   if (reg.test(url)) return Decode(RegExp.$2.replace(/\+/g, " "));
   return ""; 
}
/**
 * 组装url参数
 * @param arr 数组,要组装的对象key、value
 * @returns 组装结果
 */
function AssParameters(arr){
   debugger
   var arrF=[];
   //组装参数
   for(var i=0;i<arr.length;i++){
      arrF.push(arr[i].key+'='+arr[i].value+'&');
   }
   var arrFStr=arrF.join('');
   //去掉最后一个&
   arrFStr=arrFStr.substr(0,arrFStr.length-1);
   return arrFStr;
}

//将参数放在WinParam
function SetWinParam(key,value){
   WinParam[key]=value;
   return WinParam;
}

//将源窗口通过WinParam变量传过来参数Param变成Json对象,返回某参数的值
function GetWinParam(key){
   if(key in WinParam){
      return WinParam[key];
   }else if("param" in WinParam){
      var p=WinParam.param;
      if(key in p)return p[key];
   }
   return "";
}

function ReLoadPage(){
   location.reload();
}
/**
 * 两个字符进行比较
 * @param a 比较字符
 * @param o 比较运算符
 * @param b 比较字符
 * @returns true or false
 */
function Compare(a,o,b){
   var r
   switch(o)
    {
        case "!=":
            r=(a!=b);
            break;
        case ">":
            r=(a>b);
            break;
        case "<":
            r=(a<b);
            break;
        case ">=":
            r=(a>=b);
            break;
        case "<=":
            r=(a<=b);
            break;
        default:
           r=(a==b);
    }
   return r;
}

//****Json类函数Start****//
/**
 * 通过Ajax获得数据
 * @param Param 包含两个参数,Action和Parems
 * @returns json doc对象
 */
function JsonByAjax(Param){
   var dataR;
    $.ajax({
      type : "post",
      url :Backstage,
      dataType: "text",
      data : Param.Params,
      async : false,
      success : function(data){
         dataR=data;
      },
      error : function(errorThrown){
         dataR=errorThrown;
      }
    });
    return dataR;
}
/**
 * ajax方式获取数据封装
 * @param Param 传入参数
 * @param successFn 成功执行方法
 * @param errorFn 失败执行方法
 * @author Yasin
 */
function JsonByAjaxFn(Param,successFn,errorFn){
   //组拼默认参数
   Param.Params.operatorId=fun_getLocalstorage('accountMsgEl').UserID;
   Param.Params.BUId=fun_getParmsFun('fun_DataBUId');
   Param.Params.token=fun_getLocalstorage('accountMsgEl').Token;

   $.ajax({
      type : "post",
      url :Backstage,
      dataType: "text",
      data : Param.Params,
      async : true,
      success : function(data){
         //处理token不一致跳转
         if((JSON.parse(data).errorCode===-1 || JSON.parse(data).errorCode===-2) && Param.Params.method!='Logout'){
            alert('用户超时!');
            setTimeout(function(){
               //清掉缓存
               fun_removeLocalstorage('accountMsgEl');
               fun_removeLocalstorage('timer');
               //跳登录
               location.href = fun_getParmsFun('Sys_RootPath')+'login.html';
            },2000);
         }else {
            successFn(data);
         }
      },
      error : function(errorThrown){
         errorFn(errorThrown);
      }
   })
}
/**
 *  ajax方式获取数据封装,处理还是json字符串的情况
 * @param Param 参数
 * @param successFn 成功回调
 * @param errorFn 失败回调
 * @author Yasin
 */
function JsonStringByAjaxFn(Param,successFn,errorFn){
   //组拼默认参数
   Param.Params.operatorId=fun_getLocalstorage('accountMsgEl').UserID;
   Param.Params.BUId=fun_getParmsFun('fun_DataBUId');
   Param.Params.token=fun_getLocalstorage('accountMsgEl').Token;

   $.ajax({
      type : "post",
      url :Backstage,
      dataType: "text",
      data : Param.Params,
      async : true,
      success : function(data){
         successFn(data);
      },
      error : function(errorThrown){
         errorFn(errorThrown);
      }
   })
}


function JsonTotal(json,formula,field){
   var dataR;
   var i=0;
   switch(formula){
   case "sum":
      dataR=0;
      for(i=0;i<json.length;i++){
         var a=parseFloat(json[i][field]);
         if(IsNum(a))dataR+=a;
      }
   break;
   case "max":
      dataR=parseFloat(json[0][field]);
      for(i=1;i<json.length;i++){
         if(dataR<parseFloat(json[i][field]))dataR=parseFloat(json[i][field]);
      }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值