日期:2014-05-16  浏览次数:20443 次

自己在JSP项目开发中整理的JS工具类
   这是我在做JSP项目时整理出来的JS工具类,这里只收集了一些公共的方法,与具体项目或框架相关的方法没有收集进来,因为可能对大家没有太多的用。其中有部分方法是我写的,部分方法是组员写的,还有网上看到的自己做了一些修改。
   大家如果发现什么Bug或有更好的解决方法都可以提出来,我们一起来完善它。

/*  
 * @(#)CommonUtilities.js 0.8 2009-11-20  
 *   
 * Copyright 2009 BianJing,All rights reserved.  
 */

/**
 * 5秒钟倒计时脚本
*/
var second = 5;
function setTime(){
	if(second >= 0){
		window.setTimeout(setTime,"1000");
		var oTime = document.getElementById("time");
		oTime.innerHTML = second + " 秒后将自动关闭该浏览器";
		second --;
	} else {
		window.close();
	}
}
/**
 * 去掉字符串两端的空格
 * @param 要去掉两端空格的字符串
 * @return 去掉两端空格后的字符串
 */
function trim(str){   
  return str.replace(/(^\s*)|(\s*$)/g,"");   
}
/**
 * 检查字符串是否为空
 * @param 要检查的字符串
 * @return true 字符串为空,false 字符串不为空
 */
function isNull(str){
	if(str == null || trim(str).length == 0)
		return true;
	else 
		return false;
}
/**
 * 选中所有复选框控件或取消所有选中的复选框控件
 * @param 用于控制所有复选框的复选框控件
 */
function selectAll(checkbox){
	var cks = document.getElementsByTagName("input");
	for(var i=0;i<cks.length;i++){
		if(cks[i].type == "checkbox"){
			cks[i].checked = checkbox.checked;
		}
	}
}
/**
 * 判断是否有复选框控件被选中
 * @return true 有复选框被选中,false 没有任何复选框被选中
 */
function checkBoxSelected(){
   	var cks = document.getElementsByTagName("input");
	for(var i=0;i<cks.length;i++){
		if(cks[i].type == "checkbox"){
			if(cks[i].checked)
				return true;
		}
	}
    
	return false;
}
/**
 * 检查字符串是否包含非数字
 * @param 要检查的字符串
 * @return true 没有包含非数字,false 含有非数字或为空
 */        
function isNumeric(num){
    var i,j;
    j=num.length;
    if(j==0){
        return false;
    }else{
        if(num != "0"){
            if(!num)
				return false;
        }
    }
    for(i=0;i<j;i++){
        var k;
        k=num.charAt(i);
        if (k<'0'|| k>'9'){
            return false;
        }
    }
    return true;
}
 /**
 * 格式化金钱,并保留两位小数
 * @param 要格式化的数字
 * @return 格式化后的字数字符串
 */
function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
		num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));
	
	return (((sign)?'':'-') + num + '.' + cents);
}
/** 当前操作是否可提交标示位 */
var isSubmit = true;
/**
 * 表单提交
 * @param form : 需要提交的表单
 * @param path : 表单提交的地址
 * @param target :表单提交窗口打开类型 
 * _blank:新开的浏览器窗口 
 * _parent:父级浏览器窗口
 * _self:当前浏览器窗口 (默认)
 * _top:顶级浏览器窗口
 */
function exeSubmit(form,path,target) {
	// 检查是否可提交
    if (isSubmit) {
        // 设成false,标示不能进行重复提交
    	isSubmit = false;
		form.action = path;
		if (!isNull(target)) {
			form.target = target;
		}
		form.submit();
		form.target = "";
    } else {
        return false;
    }
}