/*
'*******************************************************************************
'*  文件名:fun_ky.js
'*  描述:客户端函数集
'*  创建者:   陈年盛      时间:   2003-8-25
'*  修改者:               时间:   
'*******************************************************************************
*/
/*
checkvalue(对象名or变量名,下限,上限,参数列表,名称)

对象名 or 变量名 在客户端验证中是表单域对象的名称，在服务器端验证中是变量名称。 
下限 在"长度检测"、"数字大小检测"中设置最小值 
上限 在"长度检测"、"数字大小检测"中设置最大值 
参数列表 是下面几个数字的和
1 不能为空
2 必需是数字
4 必需是整数
8 必需是数字、字母和_.- （一般的用户名、密码常用）
16 自定义字符检测 （字符列表作为一个字符串写在"下限"中）
32 长度检测
64 数字大小检测
128 实数检测

128只能与1同使用  且low为整数位数，up为小数位数
比如 项目经费精步度为12,2  且不能为空,就写成
checkvalue("xmjf",12,2,1+128,"项目经费")

16,32,64不能同时使用  
名称 对应的中文名 

比如，年龄只能填1到100的整数，并且必需填写，就是这么写：
CheckValue(age,1,100,1+4+64,"年龄")
*/
function checkvalue(obj, low, up, mode, lable){
    var temp,type;
    var length, i, base, str;
    var int_s,dec_s,xx;
    str=document.getElementById(obj).value;
    if(str==null){
			lenght=0;
			str="";
		}	
		else{	
			length = str.length
		}	
    temp=""
    if( mode % 2 >= 1 ){
        if( str == "" ){
            temp = temp + "“" + lable + "”" + "不能为空！" + "\n";
        }
    }
    if( mode % 4 >= 2 ){
        base = "0123456789."
        for(i = 0;i<=length-1;i++)
            if( base.indexOf(str.substring(i, i+1)) == -1  ){
				temp = temp + "“" + lable + "”" + "必需是数字！" + "\n";
				break;
            }    
    }
    if( mode % 8 >= 4 ){
        base = "0123456789"
        for(i = 0;i<=length-1;i++)
            if( base.indexOf(str.substring(i, i+1)) == -1  ){
                temp = temp + "“" + lable + "”" + "必需是整数！" + "\n";
                break;
            }    
    }
    
    if( mode % 16 >= 8 ){
        base = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789_-."
        for(i = 0;i<=length-1;i++)
            if( base.indexOf(str.substring(i, i+1)) == -1  ){
                temp = temp + "“" + lable + "”" + "包含非法字符！它只能是字母、数字和“- _ .”。" + "\n";
                break;
            }
    }
    
    if( mode % 32 >= 16 ){
        base = low.replace("[a-z]", "abcdefghijklmnopqrstuvwxyz")
        base = base.replace("[a-z]", "abcdefghijklmnopqrstuvwxyz")
        base = base.replace( "[0-9]", "0123456789")
        for(i = 0;i<=length-1;i++)
            if( base.indexOf(str.substring(i, i+1)) == -1 ){
                temp = temp + "“" + lable + "”" + "包含非法字符！它只能是" + up + "。" + "\n";
                break;
            }
    }
    
    if( mode % 64 >= 32 ){
			if (!(mode % 2 >= 1)&&(length==0))//可以为空
				;
			else{
        if( ! (length >= low && length <= up) && low!=up){
               temp = temp + "“" + lable + "”" + "的长度必需在" + low + "到" + up + "之间！" + "\n";
        }
        if(( low!=length) && (low==up)){
               temp = temp + "“" + lable + "”" + "的长度必需是"+low+"位 ！" + "\n";
        }
      }
    }
    
     if( mode % 128 >= 64 ){
        if( ! (parseInt(str) >= parseInt(low) && parseInt(str) <= parseInt(up)) ){
               temp = temp + "“" + lable + "”" + "必需在" + low + "到" + up + "之间！" + "\n";
        }

    }
    if (mode % 256 >=128){ //实型数据判断
			base = "0123456789."
			for(i = 0;i<=length-1;i++)
				if( base.indexOf(str.substring(i, i+1)) == -1  ){
					temp = temp + "“" + lable + "”" + "必需是数字\n";
					break;
				}    
			if(temp==""){
				xx=str.indexOf(".");
				if (xx>=0){ //有小数点形如  12.3
					int_s=str.substring(0,xx);
					dec_s=str.substring(xx+1,length);
					if (int_s.length>low)
						temp=temp+"“"+lable+"”"+"整数位必须在 "+low+" 位以内。\n";
					if (dec_s.length>up)
						temp=temp+"“"+lable+"”"+"小数位必须在 "+up+" 位以内。\n";
				}
				else  //没有小数点123
					if (length>low)
						temp=temp+"“"+lable+"”"+"整数位必须在 "+low+" 位以内。\n";
			}
    }
    
    if(temp!=""){
    	alert(temp);
    	document.getElementById(obj).focus();
    	return false; 
		}
	return true;
}





//将下拉列表框中选中的文本 添加到相应的表单元件中
// s_obj: 下拉列表框名
// t_obj:  目的元件名
		function text_init(s_obj,t_obj){
			var sel_obj,tex_obj;
			sel_obj=document.getElementById(s_obj);
			tex_obj=document.getElementById(t_obj);
			tex_obj.value=sel_obj.options[sel_obj.selectedIndex].text ;
		}
		
		
		
/***********函数名 img_wh(imgid,w,h)  ****************
功能：按比例改变图象或其他对像的宽、高
参数：imgid :对象的id
			w: 要想改变到的宽度
			h:  要想改变到的高度
注：	若只想改变其中一个，请将w、h设为同一值
例：img_wh("cp_pic",100,100);
*/
function img_wh(imgid,w,h)
{
//w0: 原图像宽度  h0: 原图像高度
//w_bl: 宽的比例   h_bl: 高的比例
//min_bl: 最小的比例
//imgobj 获得要操作的对像
	var w0,h0,w_bl,h_bl,min_bl,imgobj
	imgobj=imgid
//	imgobj=document.getElementById(imgid); //获得要操作的对像
	w0 = imgobj.width;
	h0 = imgobj.height;
	w_bl=w/w0 ;
	h_bl=h/h0 ;
	if (w_bl<h_bl)
		min_bl=w_bl;
	else
		min_bl=h_bl;
	if (min_bl<1){
	 imgobj.width=Math.floor(w0*min_bl);
	 imgobj.height=Math.floor(h0*min_bl);
	}
}
