⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 public.js

📁 利用js实现与服务器的异步交互
💻 JS
📖 第 1 页 / 共 2 页
字号:
function onMouseOver(row) {
		with(row) 
		{
			if(style.backgroundColor != "blue")
			{		
				style.backgroundColor='#E3EFFF';				
			}
		}
}

function onMouseOut(row) {
	with(row) {
		if(style.backgroundColor != "blue")
		{		
			style.backgroundColor='white';						
		}
	}
}

// Change color, this will be called by the mouseover event of the datagrid
var currentRowId = "";
function CG(obj, rowId) 
{
	if (event.type.toLowerCase()=="dblclick")
	{
		DblClickRow(obj);
	}
	else if(event.type.toLowerCase()=="click")
	{
		ClickRow(obj);
	}
	
	currentRowId = rowId;
	var checkobject=obj.getElementsByTagName("input");			
	if (checkobject(0) != null && checkobject(0) != undefined)
	{
		if (event.srcElement.tagName != "input" && event.srcElement.tagName != "INPUT"){
			if(checkobject(0).disabled!=true)
			checkobject(0).checked=!checkobject(0).checked;
		}
	}								
}


function ClickRow(_row)
{
	var pTable = GetParentTable(_row);
	if (pTable != null)
	{
		var rowArr = pTable.rows;
		var rowCount = rowArr.length;
		for (i=0; i<rowArr.length; i++)
		{
			var tmpRow = rowArr[i];
			if (tmpRow.getAttribute("onmouseout") != null 
				&& tmpRow.getAttribute("onmouseout") != undefined)
			{
				tmpRow.style.backgroundColor="white";
				tmpRow.checkstatus = null;
			}
		}
		_row.style.backgroundColor="#E3EFFF";
	}
}

function DblClickRow(_row)
{
	var pTable = GetParentTable(_row);
	if (pTable != null)
	{ 
		var rowArr = pTable.rows;
		//alert(rowArr.length)
		var rowCount = rowArr.length;
		
		for (i=0; i<rowArr.length; i++)
		{
			var tmpRow = rowArr[i];
			if (tmpRow.getAttribute("onmouseout") != null 
				&& tmpRow.getAttribute("onmouseout") != undefined)
			{
				tmpRow.style.backgroundColor="white";
			}
		}
		_row.style.backgroundColor="#E3EFFF";
	}
}


function GetParentTable(_row)
{
	var parentTbObj = _row;
	while(parentTbObj.tagName.toUpperCase() != "TABLE"){
		parentTbObj = parentTbObj.parentElement;
		if (parentTbObj.tagName.toUpperCase()=="BODY")
		{
			return null;
		}
	}
	return parentTbObj;
}	



/*****************************************************************
** 文件名:Public.js
** Copyright (c) 2002-2003 上海美华系统有限公司
** 创建人:rche
** 日 期:2002-10-28
** 描 述:系统公共JavaScript函数
** 修改人:
** 日 期:
** 版 本:
******************************************************************/


/*****************************************************************
** 函数名:	checkLength(strString, numberLeast, numberMost)
** 输 入:	strString, numberLeast, numberMost
** strString:	要检查的字符串

** numberLeast:最小长度(整数)
** numberMost: 最大长度(整数)
**
** 输 出:	Boolean
**			
** 功能描述:    如果输入的字符串长度在numberMost和numberLeast之间		
**              返回True,否则返回False
**
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
****************************************************************/
function  checkLength(strString, numberLeast, numberMost)
{
	if (strString.length>=numberLeast && strString.length<=numberMost)
		{return true}
	else
		{return false}
}



/*****************************************************************
** 函数名:	checkString(strString)
** 输 入:	strString
** strString:	要检查的字符串

**
** 输 出:	Boolean
**			
** 功能描述:    如果输入的字符串仅字符、数字、“_”		
**              返回True,否则返回False
**
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
****************************************************************/

function checkString(strString)
{
	for (var i=0; i<strString.length; ++i)
	{
		var c=strString.charCodeAt(i)
		if (c<48 || (c>57 && c<65) || (c>90 && c<97) || c>122)
			return false
	}
	return true
}



/*****************************************************************
** 函数名:	checkNumber(strNumber)
** 输 入:	strNumber
** strString:	要检查的数字
**
** 输 出:	Boolean
**			
** 功能描述:    如果输入的为数字		
**              返回True,否则返回False
**
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
****************************************************************/

function checkNumber(strNumber)
{
	for (var i=0; i<strNumber.length; ++i)
	{
	 	var c=strNumber.charCodeAt(i)
		if (c<48 || c>57)
		return false
	}
		return true

}  





/*****************************************************************
** 函数名:	CheckDate(strDate)
** 输 入:	strDate
** strString:	要检查的日期
**
** 输 出:	Boolean
**			
** 功能描述:    如果输入的日期格式符合:“yyyy-mm-dd”		
**              返回True,否则返回False
**
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
****************************************************************/
function CheckDate(strDate)
{
    var intDay,intMonth,intYear

    if (strDate.indexOf('-')>0)
    {
	var intYear=strDate.substring(0,strDate.indexOf('-'))
		
	var intMonth=strDate.substring(strDate.indexOf('-')+1,strDate.lastIndexOf('-'))
	if(intMonth.substring(0,1)=='0' && intMonth.length>1)
		intMonth=intMonth.substring(1,intMonth.length)

        var intDay=strDate.substring(strDate.lastIndexOf('-')+1,strDate.length)
        if (intDay.substring(0,1)=='0'&&intDay.length>1)
			intDay=intDay.substring(1,intDay.length)

        if (checkNumber(intDay)==false||checkNumber(intMonth)==false||checkNumber(intYear)==false)
            return false
        if (intMonth>12||intMonth<1)        
			return false
        if (intDay>31||intDay<1)  
            return false
        if (intYear<1900||intYear>2900)
            return false
        if (intMonth==2)
        {
			if(intYear%4==0&&intDay>29)
                return false
            if(intYear%400==0&&intDay>29)
				return false     
            if(intYear%4!=0&&intDay>28)
                return false
        }                         
        for(var i=1; i<=12;i=i+2)
        {
			if(intMonth==i)
            {
				if(intDay>31)
					return false
			}
            if (i==7)
				--i
        } 
        for(i=4;i<=11;i=i+2)
        {
			if(intMonth==i)
            {
				if(intDay>30)
					return false
			}
            if (i==6)
				i++
        }                                      
        return true
     }
     else 
	return false;

}




/*****************************************************************
** 函数名:	checkEmail(strString)
** 输 入:	strString
** strString:	要检查的EMAIL字符
**
** 输 出:	Boolean
**			
** 功能描述:    如果输入的字符格式是EMIAL		
**              返回True,否则返回False
**
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
****************************************************************/
function checkEmail(strString)
{
	var i
	var c
	var j=0
	
	for (i=0; i<strString.length; ++i)
	{
		c=strString.charCodeAt(i)
		if (c==32 || c==92 || c==47 || c==58 || c==42 || c==63 || c==34 || c==60 || c==62 || c==124)
            return false
	}
	
	for (i=1; i<(strString.length-1); ++i)
	{
		c=strString.charCodeAt(i)
		if (c==64)
			j=j+1
	}
	if (j==1)
		return true
	else
		return false
}



/*****************************************************************
** 函数名:	OpenWin(strUrl,winName,intHeight,intWidth)
** 输 入:	strUrl,winName,intHeight,intWidth
** 		strUrl---文件的URL,winName--窗体名称,

**		intHeight--窗体高度,intWidth--窗体宽度
**
** 输 出:	False
**			
** 功能描述:    新打开一个窗体在屏幕的中央		
**              
**
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
****************************************************************/

function OpenWin(strUrl,winName,intHeight,intWidth)
{
			var mytop=(screen.height- intHeight)/2;
			var myleft=(screen.width- intWidth)/2;
			var strType='resizable=yes,scrollbars=yes,width=' + intWidth + ',height=' + intHeight + ',left=' + myleft + ',top=' + mytop;
			var win=window.open(strUrl,winName,strType);
			win.focus();
			return false;
}

/*****************************************************************
** 函数名:	OpenWindows(strUrl,txtEmsNoId,txtTradeCode,txtTradeName)
** 输 入:	strUrl,txtEmsNoId,txtTradeCode,txtTradeName
** 		strUrl---文件的URL,txtEmsNoId--emsno文本框ID,txtTradeCode--txtTradeCode文本框ID,txtTradeName--txtTradeName文本框ID

**
** 输 出:	False   查询电子账册号放大镜
**			
** 功能描述:    新打开一个窗体在屏幕的中央		
**              
**
** 作 者:       lei.zhao
** 日 期:       2009-3-10
** 修 改:
** 日 期:
** 版 本:
****************************************************************/

function OpenWindows(strUrl,txtEmsNoId,txtTradeCode,txtTradeName)
{
			/*var mytop=(screen.height- 600)/2;
			var myleft=(screen.width- 800)/2;
			var strType='dialogWidth:800;dialogHeight:600;center:1;status:0;help:0';*/
			
			var x=window.showModalDialog(strUrl,'','dialogWidth:60;dialogHeight:50;center:1;status:0;help:0');
			if(x!=null)
			{
			    document.all[txtEmsNoId].value=x["Ems_No"];
			    document.all[txtTradeCode].value=x["Trade_Code"];
			    document.all[txtTradeName].value=x["Trade_Name"];
			}
			return false;
}
/*****************************************************************
** 函数名:	OpenWindows(strUrl,txtSeqNoId,txtEmsNoId,txtTradeName,txtBDate,txtEdate)
** 输 入:	strUrl,txtEmsNoId,txtTradeCode,txtTradeName
** 		strUrl---文件的URL,txtEmsNoId--emsno文本框ID,txtSeqNoId--txtSeqNoId文本框ID,txtTradeName--txtTradeName文本框ID
**        txtBDate--txtBDate文本框ID,txtEdate--txtEdate文本框ID

**
** 输 出:	False
**			
** 功能描述:    新打开一个窗体在屏幕的中央		
**              
**
** 作 者:       lei.zhao
** 日 期:       2009-3-10
** 修 改:
** 日 期:
** 版 本:
****************************************************************/

function OpenWindows1(strUrl,txtSeqNoId,txtEmsNoId,txtTradeName,txtBDate,txtEdate)
{
			/*var mytop=(screen.height- 600)/2;
			var myleft=(screen.width- 800)/2;
			var strType='dialogWidth:800;dialogHeight:600;center:1;status:0;help:0';*/
			
			var x=window.showModalDialog(strUrl,'','dialogWidth:60;dialogHeight:50;center:1;status:0;help:0');
			if(x!=null)
			{
			    document.all[txtSeqNoId].value=x["Seq_No"];
			    document.all[txtEmsNoId].value=x["Ems_No"];
			    document.all[txtTradeName].value=x["Trade_Name"];
			    document.all[txtBDate].value=x["B_Date"];
			    document.all[txtEdate].value=x["E_Date"];
			}
			return false;
}

/*------------------------------------------------------------------------------------
	功能描述: 根据MaxLength校验表单输入项长度是否合法

	创建时间:2002-?

	修改时间:2002-06-11
	参数描述:无
	返回值:是否合法
	创建人:rche
	------------------------------------------------------------------------------------*/
function IsValidInputLength()
{
	if(window.event.srcElement&&window.event.srcElement.form)
	{
	
		var Form=window.event.srcElement.form
		var FormElement;
		var li_MaxLength=2147483647;//没设置值时
		for(var i=0;i<=Form.elements.length-1;i++)
		{
			FormElement=Form.elements[i];
			//
			if(FormElement.readOnly||FormElement.disabled||FormElement.style.display=="none")
				continue;
			if(FormElement.tagName=="INPUT"&&FormElement.type=="text"&&FormElement.maxLength&&FormElement.maxLength<li_MaxLength&&FormElement.maxLength>0)
			{
				if(GetLengthByByte(FormElement.value)>FormElement.maxLength)
				{
					alert("您只能输入 "+FormElement.maxLength+" 字符!");
					FormElement.focus();
					return false;
				}
			}
			else if(FormElement.tagName=='TEXTAREA'&&FormElement.title&&!isNaN(FormElement.title))
			{
				if(GetLengthByByte(FormElement.value)>FormElement.title)
				{
					alert("您只能输入 "+FormElement.title+" 字符!");
					FormElement.focus();
					return false;
				}
			}
		}
		return true;
	}
	else
	{
		alert("IsValidInputLength 函数只能用在表单提交按钮的ONCLICK事件!");//	
		return false;
	}
}



/*****************************************************************
** 函数名:	GetLengthByByte(value)
** 输 入:	value
** 		
**
** 输 出:	字符串的字节长度
**			
** 功能描述:    按字节取字符串的长度		
**              
**
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
****************************************************************/

function GetLengthByByte(value)
{
	var li_len=value.length;
	for(var i=0;i<value.length-1;i++)
	{
		
		if(value.charCodeAt(i)>127)
			li_len=li_len+1;
	}
	return li_len;
}







/*****************************************************************
** 函数名:	keyEnter()
** 输 入:	
** 		
**
** 输 出:	
**			
** 功能描述:    回车键在表单的各个输入项间按顺序跳转		
**              
** 作 者:       rche
** 日 期:       2002-10-28
** 修 改:
** 日 期:
** 版 本:
** 示 例:       <FORM onkeypress="keyEnter()">
****************************************************************/

function keyEnter(e) 
{
	var srcElement=window.event.srcElement;
	var iKeyCode=window.event.keyCode;
	if(iKeyCode!=13) return false;
	if(srcElement.tagName=="INPUT"&&(srcElement.type=="button"||srcElement.type=="submit"||srcElement.type=="reset"))
	{
		return false;
	}
	if (srcElement.tagName=="INPUT"||srcElement.tagName=="SELECT") 
	{
		var i = 0;
		while (srcElement!=srcElement.form.elements[i])
		{
			i++;
			if(srcElement.form.elements.length==i)	//一进找到最后一个元素		
				return false;
		}
		//继续循环找到非Disabled和readOnly
		var NextElement=srcElement.form.elements[i+1];
		for(j=i+1;j<srcElement.form.elements.length;j++)
		{
			NextElement=srcElement.form.elements[j];
			
			if(NextElement.readOnly||(NextElement.disabled==true||NextElement.disabled=='disabled')||NextElement.style.display=="none")	
			{
				NextElement=null;
				continue;
			}
			if(NextElement.tagName=="INPUT")
			{
				if(NextElement.type=="hidden")
				{
					NextElement=null;
					continue;
				}
			}
			break;
			
		}
		
		if(NextElement)
		{
			
			if(srcElement.tagName=="INPUT"&&srcElement.type=="file")
				;
			else
				window.event.keyCode=0;
			try

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -