/** * * @param param 上传的参数,例子: * var parameters = { * configId:'bxgx_cbgl_plxgzsfs_xgmd_i',//必填项目,FW_IMPEXP的配置ID * filePath:'C:/Documents and Settings/liguocai/桌面/excel643657087605952371.xls'//必填项目,上传文件的路径 * _commDo:'workflowProxyService.doWork',//非必填项目,上传的后续服务 * } ; * @param uploadEvents JSON类型,包含上传过程中的回调函数,例如,上传前的校验onStart,上传完成后的回调函数onComplete, * 上传过程中发生错误的回调函数onFail等等,后面可能会扩充更多的事件。 * 例子:{onComplete:'myFunction1', * onFail:'myFunction2', * onStart:'myFunction3'} * 格式就是 事件名:函数名 * 各个事件的解析: * 1. onComplete,如果上传成功完毕,调用该函数 * 2. onFail,如果上传过程发生异常,调用该函数 * 3. onStart,上传之前的检验函数,返回true往下执行applet,返回false直接返回,不往下执行 * * @returns */ function initUploadApplet(uploadEvents,appletId){ var uploadFileAppletId = appletId||'UploadFileApplet'; var attributes = {id : uploadFileAppletId, code:'UploadFileApplet', archive: contextPath+'/applet/UploadFileApplet.jar', width:710, height:40, align:'middle'}; var parameters = { url: _getUrl(), MAYSCRIPT:true, onGetJsessionid:uploadEvents.onGetJsessionid, onGetParams:uploadEvents.onGetParams, onStart:uploadEvents.onStart, onFail:uploadEvents.onFail, onComplete:uploadEvents.onComplete, cache_option:"NO" } ; _setParameters(parameters); //要求JDK版本1.5或以上 var version = '1.5'; deployJava.runApplet(attributes, parameters, version); //获取上传的URL function _getUrl(){ var url = window.location.toString(); var count = 0; var pos = 0; for(var i=0;i100){ return; } var uploadAppletId = id || 'UploadFileApplet'; document.getElementById(uploadAppletId).setProgressBar(num); } /** * 把JSON对象的里面值转换成字符串,供applet上传使用 * @param obj JSON对象 * @returns */ function setJSONAllStr(obj){ for(var key in obj){ if((typeof obj[key])!='string'){ obj[key] = obj[key].toString(); } } return obj; } /** * 功能:从初始化文件(.ini)中读取字符串型设置值 * @param filename 字符串,必填,指定初始化文件的名称,包含路径 * @param section 字符串,必填,指定要得到的值所在的节 * @param key 字符串,必填,指定要得到的值的名称,不用区分大小写 * @param defaultValue 字符串,必填,当指定的文件、节名、项目名不存在时,函数返回该参数指定的值返回值 * @param id 字符串,非必填,applet的id,缺省为'UploadFileApplet' * @returns 函数执行成功时,在指定的文件、节名、项目名不存在任何错误的情况下,函数返回相应项的值; * 如果指定的文件、节名、项目名不存在,函数返回default参数指定的缺省值; * 如果发生错误,函数返回空字符串; * 如果任何参数的值为NULL,ProfileString()函数返回NULL。 */ function ProfileString ( filename, section, key, defaultValue,id) { //如果任何参数的值为NULL,ProfileString()函数返回NULL if(null == filename || null == section || null == key || null == defaultValue){ return null; } var applet = null; if(null == id){ applet = _getReadWriteApplet(); }else{ applet = document.getElementById(id); } if(null == applet){ alert("找不到applet,无法读写文件"); return ""; } //文件不存在返回默认值 if(false == applet.isFileExists(filename)){ return defaultValue; } var lines = applet.readFile(filename); //读文件出错返回空字符串 if(null == lines){ return ""; } var myCRLF = "_SINOBESTCRLF_"; lines = lines.split(myCRLF); var DIVIDER = "_SINOBESTPARSEFILEDIVIDER_"; var data = _parseFile(lines); //JSON的KEY都是大写格式,转换成大写查询数据 if(null == data[section+DIVIDER+key.toUpperCase()]){ //如果指定的文件、节名、项目名不存在,函数返回default参数指定的缺省值 return defaultValue; }else{ //函数执行成功时,在指定的文件、节名、项目名不存在任何错误的情况下,函数返回相应项的值 return data[section+DIVIDER+key.toUpperCase()]; } //将ini文件转换成JSON对象 function _parseFile(lines){ var posSectionBeg = 0; var posSectionEnd = 0; var posEqual = 0; var section = ""; var key = ""; var value = ""; var rtn = {}; for(var i=0,len=lines.length;i'+ ''+ '

'+ ''+ ''+ ''+ ''+ ''+ ''+ ''+ ''+ ''+ ''+ ''+ ''+ ' '+ ''+ ''+ '

'+ ''+ '