js工具类
/************************** **********************************************************************************************//************************************************************** 获取文本框的值并转换成Float类型返回**************************************************************/function $Float(el){return Util.parseFloat($F(el));}/************************************************************** 获取文本框的值并转换成Integer类型返回**************************************************************/function $Integer(el){return Util.parseInteger($F(el));}/************************************************************** 设置文本框的值**************************************************************/function $Set(el, value){$(el).value = value;}/************************************************************** 工具类Util**************************************************************/var Util = {};/************************************************************** 格式化字符串,使用方式类似java中的String.format()方法**************************************************************/Util.format = function(format){ var args = []; for(var i=1; i<arguments.length; i++){ args.push(arguments[i]); } return format.replace(/\{(\d+)\}/g, function(m, i){ return args[i]; });}/**************************************************************判断字符串是否为空**************************************************************/Util.strIsEmpty = function(str){return str == null || !str || typeof str == undefined || str == '';}/**************************************************************将传入值转换成整数**************************************************************/Util.parseInteger = function(v){ if(typeof v == 'number'){return v;}else if(typeof v == 'string'){var ret = parseInt(v);if(isNaN(ret) || !isFinite(ret)){return 0;}return ret;}else{return 0;} }/**************************************************************将传入值转换成小数**************************************************************/Util.parseFloat = function(v){if(typeof v == 'number'){return v;}else if(typeof v == 'string'){var ret = parseFloat(v);if(isNaN(ret) || !isFinite(ret)){return 0;}return ret;}else{return 0;} }/**************************************************************将传入值转换成小数,传入值可以是以逗号(,)分隔的数字,此方法将会过滤掉(,)**************************************************************/Util.parseDotFloat = function(v){if(typeof v == 'number'){return v;}else if(typeof v == 'string'){v = v.replace(/[^\d|.]/g , '');v = parseFloat(v);if(isNan(v) || !isFinite(v)){return 0}return ret;}else{return 0;}}/************************************************************** 添加事件**************************************************************/Util.addEventListener = function(element, event, handler, param){param.scope = param.scope || element;if(typeof element == 'string'){element = $(element);}var h = function(){handler.call(param.scope, param);} if(element.attachEvent){element.attachEvent('on' + event, h);}else if(element.addEventListener){element.addEventListener(event, h, false);}else{element['on' + event] = h;}}/**************************************************************检查标签值是否为空,当为空时提示@param el {Element, string}检查的标签@param msg {string}提示消息,当检查失败时提示@return true检查通过,标签的值不空,false标签值为空 **************************************************************/Util.checkIsNotEmpty = function(el, msg){if(typeof el == 'string'){el = $(el);}if(Util.strIsEmpty(el.value)){alert(msg);if(!el.disabled){el.focus();el.select();}return false;}return true;}/**************************************************************字符串传换成date类型@str {string}字符串格式表示的日期,格式为:yyyy-mm-dd@return {Date}由str转换得到的Date对象**************************************************************/Util.str2date = function(str){var re = /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/; var dt; if(re.test(str)){ dt = new Date(RegExp.$1,RegExp.$2 - 1,RegExp.$3); } return dt;}/**************************************************************计算2个日期之间的天数@day1 {Date}起始日期@day2 {Date}结束日期@return day2 - day1的天数差**************************************************************/Util.dayMinus = function(day1, day2){var days = Math.floor((day2-day1)/(1000 * 60 * 60 * 24));return days;}/**************************************************************设置组合列表框选择项@param combo 组合列表框@param value 选择值@param defaultIdx 默认选中项的序号**************************************************************/Util.setComboSelected = function(combo, value, defaultIdx){if(typeof combo == 'string'){combo = $(combo);} var idx = defaultIdx;if(typeof defaultIdx == 'undefined'){idx = -1;}for(var i=0, len=combo.options.length; i<len; ++i){var v = combo.options[i].value; if(v == value){idx = i;break;}} combo.selectedIndex = idx;} /**************************************************************字符串转换成日期 @param str {String}字符串格式的日期@return {Date}由字符串转换成的日期**************************************************************/Util.str2date = function(str){var re = /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/; var dt; if (re.test(str)){ dt = new Date(RegExp.$1,RegExp.$2 - 1,RegExp.$3); } return dt;}/************************************************************** 计算2个日期间的天数差 @param day1 {Date}开始日期@param day2 {Date}结束日期@return 天数差**************************************************************/Util.dayInterval = function(day1,day2){var days = Math.floor((day2-day1)/(1000 * 60 * 60 * 24));return days;} ?