/** * 自定义全局通用函数 * * @author */ (function($) { $.sendGet = function(url, data, callback, errCallback, type){ return $.send(url, data, callback, errCallback, type, 'GET'); } $.sendPost = function(url, data, callback, errCallback, type){ return $.send(url, data, callback, errCallback, type, 'POST'); } $.sendPostTb = function(url, data, callback, errCallback, type){ return $.send(url, data, callback, errCallback, type, 'POST',false); } $.sendPut = function(url, data, callback, errCallback, type){ data._method='PUT'; return $.send(url, data, callback, errCallback, type, 'POST'); } $.sendDelete = function(url, data, callback, errCallback, type){ data._method='DELETE'; return $.send(url, data, callback, errCallback, type, 'POST'); } $.send = function(url, data, callback, errCallback, dtype, stype,async){ if ( jQuery.isFunction(data) ) { if( !jQuery.isFunction( callback ) ){ dtype = callback; errCallback = data;//没有定义错误处理方法时,采用成功的处理方式 }else{ dtype = errCallback; errCallback = callback; } callback = data; data = {}; }else if( !jQuery.isFunction( errCallback ) ) { dtype = errCallback; errCallback = callback;//没有定义错误处理方法时,采用成功的处理方式 } if(stype==null){ stype = "GET"; } if(async==null){ async = true; } //访问成功后回调 var cmpCallback = function( res, status ) { var data = jQuery.parseJSON(res.responseText); var code = 200; try{ code = data.bq_status; }catch(e){} } return jQuery.ajax({ type: stype, url : url, data: data, async: async, success : function( data, status, xhr ){ var type = "success"; try{ type = data.bq_type; }catch(e){} if(type=="error"){ errCallback.call(this, data, status, xhr); }else{ callback.call(this, data, status, xhr); } }, error : errCallback, complete: cmpCallback, dataType: dtype }); } })(jQuery); BusinessObject = function() { return { delegate : function(type) { for (var p in this) { if (typeof(this[p]) == "function") { if (p != 'delegate') { this[p] = function() { var mn = p; return function() { if(type=="" || type==null) return "-1"; this.action = type; var param = arguments[0]; var struts2MethodURL=this.action + "_" + mn; if(this.module!="" && this.module.length>0 && this.module != null){ struts2MethodURL = this.module + "/" + struts2MethodURL; } function load_val(callback){ $.sendPostTb( struts2MethodURL, param, function(data){ callback(data); }, null, "json" ); } var jsonDATA = {}; load_val(function(data){ jsonDATA = data; }); return jsonDATA; }; }(); } } } return this; } }; }(); var tempJsonData = {}; function getTempJsonData(){ return tempJsonData; } function setTempJsonData(data){ tempJsonData = data; } function renderDATA(data,row,rowsid){ $.each(data, function(i,n){ var jsonObj = eval(n); for(var property in jsonObj) { row.find("#"+property).text(jsonObj[property]); } row.appendTo("#"+rowsid);//添加到模板的容器中 row = row.clone(); }); } function renderDATAFORM(data,row){ $.each(data, function(i,n){ var $this = row.find("#"+i); var d_n = n; if($this.is("[format='yyyy-MM-dd']")){ if(d_n.length>10){ d_n = d_n.substring(0,10); } row.find("#"+i).val(d_n); }else if($this.is("select")){ var field_id = $this.attr("id"); $("#"+field_id+" option[value='"+d_n+"']").attr("selected", true); }else if($this.is(":radio")){ var field_name = $this.attr("name"); $("[name="+field_name+"][value="+d_n+"]").attr("checked",true); }else if($this.is(":checkbox")){ var field_name = $this.attr("name"); $("[name="+field_name+"]").attr("checked",false); $("[name="+field_name+"][value="+d_n+"]").attr("checked",true); }else{ row.find("#"+i).val(n); } }); } function renderDATAROW(data,row){ $.each(data, function(i,n){ row.find("#"+i).text(n); }); } function getSearchData(data,rowName){ var arr_data = []; $.each(data, function(i,n){ var jsonObj = eval(n); arr_data[i] = jsonObj[rowName]; }); return arr_data; } //------------自动加载修正---------------------------------- function renderSPAN(data,row,rowsid){ $.each(data, function(i,n){ var jsonObj = eval(n); row.find("span").each(function(){ if($(this).attr("id")+''!='undefined'){ var tid = $(this).attr("id"); if(jsonObj[tid]+''=='undefined'){ $(this).text(''); }else{ $(this).text(jsonObj[tid]); } } }); row.appendTo("#"+rowsid);//添加到模板的容器中 row = row.clone(); }); } //---------------------------------------------- function renderJSP(targetObj, templateURL, data) { $(targetObj).setTemplateURL( templateURL, null, { filter_data : false }).processTemplate(data); } function renderJSP1(targetObj, template, data) { $(targetObj).setTemplateElement(template); $(targetObj).processTemplate(data); } function loadCSS(css,target){ var eHead = document.getElementById(target); var eLink = document.createElement("link"); eLink.rel = "stylesheet"; eLink.type = "text/css"; eLink.href = css; eHead.appendChild(eLink); } function loadJS(js,callback){ $.getScript(js,callback); } /** * 单条json转string * @param o * @returns {String} */ function json2str(o) { var arr = []; var fmt = function(s) { if (typeof s == 'object' && s != null) return json2str(s); return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s; } for (var i in o) arr.push("'" + i + "':" + fmt(o[i])); return '{' + arr.join(',') + '}'; } /** * json数组转string * @param jsonArray * @returns {String} */ function JsonArrayToString(jsonArray){ var JsonArrayString = "["; for(var i=0;i<jsonArray.length;i++){ JsonArrayString=JsonArrayString+json2str(jsonArray[i])+","; } JsonArrayString = JsonArrayString.substring(0,JsonArrayString.length-1)+"]"; return JsonArrayString; } /** * 获取表单数据 * @param formid * @returns {String} */ function getFormData(formid){//serializeArray=json,serialize=string var jsonArray = $('#'+formid).serializeArray(); var JsonArrayString = "{"; for(var i=0;i<jsonArray.length;i++){ JsonArrayString=JsonArrayString + "'" + jsonArray[i]["name"]+ "'" + ":"+ "'" + jsonArray[i]["value"]+"',"; } JsonArrayString = JsonArrayString.substring(0,JsonArrayString.length-1)+"}"; return eval("(" + JsonArrayString + ")"); } /** * 获取标准库表数据<select><option> **/ function getStdOption(data){ var opetionType = ""; var i=0; for(i=0;i<data[0].rowSet.length;i++){ var rowData = data[0].rowSet[i]; opetionType = opetionType + " <option value=\""+rowData.CODE_ID+"\">"+rowData.CODE_NAME+"</option>"; } return opetionType; } /** * 获取标准库表数据根据code_id返回code_name<select><option> **/ function getCodeName(data,code_id){ var code_name = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.CODE_ID == code_id){ code_name = rowData.CODE_NAME; } } return code_name; } function getUUIDName(data,uuid){ var name = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.UUID == uuid){ name = rowData.NAME; } } return name; } function getRoleName(data,dpt_no){ var name = ""; var i=0; if(dpt_no!=null && dpt_no!='' && dpt_no.split(',').length>1){ var dptnos = dpt_no.split(','); for(var s in dptnos){ for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.DPT_NO == dptnos[s]){ name = name + rowData.DPT_NAME + ','; break; } } } name = name.substring(0, name.length - 1); }else{ for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.DPT_NO == dpt_no){ name = rowData.DPT_NAME; break; } } } return name; } function getPortletName(data,portlet_id){ var name = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.PORTLET_ID == portlet_id){ name = rowData.NAME; } } return name; } /** * 单位数据根据code_id返回code_name<select><option> **/ function getUnitName(data,uuid){ var name = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.UUID == uuid){ name = rowData.NAME; } } return name; } function getSysUserName(data,uuid){ var name = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.CODE == uuid){ name = rowData.EMNAME; } } return name; } function getuuid_codeame(data,uuid){ var code_name = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.UUID == uuid){ code_name = rowData.CODE_NAME; break; } } return code_name; } /** * 从data单位树中找出最高一极的单位UUID **/ function getParentID(data,parent){ var unit_id = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.PARENT_ID == parent){ unit_id = rowData.UUID; break; } } return unit_id; } /** * 获取checkbox选中值 */ function getCheckBoxValue(checkboxname){ var str=""; $("input[name='"+checkboxname+"']:checkbox").each(function(){ if($(this).attr("checked")){ str += $(this).val()+","; } }); if(str.length>1){ str = str.substring(0, str.length - 1); } return str; } //修改名称显示 function changeNameDisplay(str,length){ var l = str.length; if(l<length){ return str; }else{ return str.substring(0,length)+"..."; } } //关闭 function closeFancyBox(alertContent,type){ if(alertContent&&alertContent != ''){ if(type == 1){ fancyAlert(alertContent,"1");//成功 }else if(type == 0){ fancyAlert(alertContent,"0");//失败 }else if(type == 2){ fancyAlert(alertContent,"2");//警告 } } if(type == 1){ setTimeout(function(){ $.fancybox.close(); // 关闭FancyBox 模态窗口 },1000); }else{ $.fancybox.close(); // 关闭FancyBox 模态窗口 } } /** * 获取标准库表数据根据code_id返回code_name<select><option> **/ function getCodeName(data,code_id){ var code_name = ""; var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData.CODE_ID == code_id){ code_name = rowData.CODE_NAME; } } return code_name; } /** * 增加字段 **/ function getDataAddNode(data,code_id,code_name){ var i=0; for(i=0;i<data.length;i++){ var rowData = data[i]; rowData[code_id] = code_name; } return data; } //添加判断字段是否是部门还是人员 function getDataUnitOrUser(data, imageUrl){ var i = 0; for(i=0;i<data.length;i++){ var rowData = data[i]; if(rowData["UUID"].indexOf("1_")>=0){ rowData["icon"] = imageUrl + "/images/main/bumen.gif"; }else if (rowData["UUID"].indexOf("2_")>=0){ rowData["icon"] = imageUrl + "/images/main/renyuan.gif"; } } return data; } //定义一些全局方法 (function($){ $.getUrlParam = function(name){ var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r!=null) return unescape(r[2]); return null; }; $.getJwWindowPic = function(){ return "icon-window-pic"; }; $.getJwAdvsearchPic = function(){ return "icon-ext-advsearch"; }; }(jQuery));