﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-primeton</title><link>http://www.blogjava.net/primeton/</link><description /><language>zh-cn</language><lastBuildDate>Fri, 17 Apr 2026 14:10:27 GMT</lastBuildDate><pubDate>Fri, 17 Apr 2026 14:10:27 GMT</pubDate><ttl>60</ttl><item><title>处理一些和日期有关的动作</title><link>http://www.blogjava.net/primeton/archive/2007/09/18/146034.html</link><dc:creator>primeton</dc:creator><author>primeton</author><pubDate>Tue, 18 Sep 2007 00:46:00 GMT</pubDate><guid>http://www.blogjava.net/primeton/archive/2007/09/18/146034.html</guid><wfw:comment>http://www.blogjava.net/primeton/comments/146034.html</wfw:comment><comments>http://www.blogjava.net/primeton/archive/2007/09/18/146034.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/primeton/comments/commentRss/146034.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/primeton/services/trackbacks/146034.html</trackback:ping><description><![CDATA[<p>/*<br />
-------------------------------------------------------------------------------<br />
文件名称：date.js<br />
说&nbsp;&nbsp;&nbsp; 明：JavaScript脚本，处理一些和日期有关的动作<br />
版&nbsp;&nbsp;&nbsp; 本：1.0<br />
修改纪录:<br />
---------------------------------------------------------------------------<br />
时间&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 修改人&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 说明<br />
2005-4-20&nbsp;&nbsp; zhouming&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 创建<br />
-------------------------------------------------------------------------------&nbsp;&nbsp;&nbsp;&nbsp; <br />
*/</p>
<p><br />
/*<br />
用途：把日期从一种格式转换为另一种格式<br />
输入：date：日期；fmt1：原来的格式；fmt2 转换成的格式<br />
返回：fmt2格式的日期<br />
格式：年：yyyy&nbsp;&nbsp; 月：MM&nbsp; 日：dd<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 时：HH&nbsp;&nbsp; 分：mm&nbsp; 秒：ss<br />
*/<br />
function dateFormat( date, fmt1,fmt2) { <br />
&nbsp;&nbsp;&nbsp; if (isFormatDate( date, fmt1)) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (fmt2.indexOf("yyyy")!=-1&amp;&amp;fmt2.indexOf("MM")!=-1&amp;&amp;fmt2.indexOf("dd")!=-1){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //设置日期<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var retDate = setDate( date, fmt1,fmt2);<br />
&nbsp;&nbsp;&nbsp;&nbsp; if (fmt2.indexOf("HH")!=-1&amp;&amp;fmt2.indexOf("mm")!=-1&amp;&amp;fmt2.indexOf("ss")!=-1){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //设置时间<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;retDate = setTime(date, fmt1,retDate);<br />
&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; return retDate;<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; else {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("日期格式错误");<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; else {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("日期格式错误");<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; return "";<br />
} </p>
<p>&nbsp;</p>
<p>/*<br />
用途：判断是否是日期<br />
输入：date：日期；fmt：日期格式<br />
返回：如果通过验证返回true,否则返回false<br />
*/<br />
function isFormatDate( date, fmt) { <br />
&nbsp;&nbsp;&nbsp; var yIndex = fmt.indexOf("yyyy");<br />
&nbsp;&nbsp;&nbsp; if(yIndex==-1) return false;<br />
&nbsp;&nbsp; var year = date.substring(yIndex,yIndex+4);<br />
&nbsp;&nbsp; var mIndex = fmt.indexOf("MM");<br />
&nbsp;&nbsp;&nbsp; if(mIndex==-1) return false;<br />
&nbsp;&nbsp; var month = date.substring(mIndex,mIndex+2);<br />
&nbsp;&nbsp; var dIndex = fmt.indexOf("dd");<br />
&nbsp;&nbsp;&nbsp; if(dIndex==-1) return false;<br />
&nbsp;&nbsp; var day = date.substring(dIndex,dIndex+2);<br />
&nbsp;&nbsp;&nbsp; if(!isNumber(year)||year&gt;"2100" || year&lt; "1900") return false;<br />
&nbsp;&nbsp;&nbsp; if(!isNumber(month)||month&gt;"12" || month&lt; "01") return false;<br />
&nbsp;&nbsp;&nbsp; if(day&gt;getMaxDay(year,month) || day&lt; "01") return false;<br />
&nbsp;&nbsp;&nbsp; return true;<br />
} </p>
<p>//取得某个月的最大天数<br />
function getMaxDay(year,month) {<br />
&nbsp;&nbsp;&nbsp; if(month==4||month==6||month==9||month==11)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return "30";<br />
&nbsp;&nbsp;&nbsp; if(month==2)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(year%4==0&amp;&amp;year%100!=0 || year%400==0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return "29";<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return "28";<br />
&nbsp;&nbsp;&nbsp; return "31";<br />
}</p>
<p>function isNumber( str ){&nbsp; <br />
&nbsp;&nbsp;&nbsp; var regu = /^(\d+)$/;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return regu.test(str);<br />
}</p>
<p>function setDate( date, fmt1,fmt2) { <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var yIndex = fmt1.indexOf("yyyy");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var year = date.substring(yIndex,yIndex+4);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var mIndex = fmt1.indexOf("MM");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var month = date.substring(mIndex,mIndex+2);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var dIndex = fmt1.indexOf("dd");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var day = date.substring(dIndex,dIndex+2);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var retDate = fmt2;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; retDate = retDate.replace(/yyyy/i,year); <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; retDate = retDate.replace(/MM/i,month); <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; retDate = retDate.replace(/dd/i,day); <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return retDate ;<br />
}</p>
<p>function setTime( date, fmt1,retDate) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var hour ="00";<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var min ="00";<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var sec ="00";<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var hIndex = fmt1.indexOf("HH");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var mIndex = fmt1.indexOf("mm");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var sIndex = fmt1.indexOf("ss");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(sIndex!=-1&amp;&amp;hIndex!=-1&amp;&amp;mIndex!=-1) {<br />
&nbsp;&nbsp;&nbsp;sec = date.substring(sIndex,sIndex+2);<br />
&nbsp;&nbsp;&nbsp;min = date.substring(mIndex,mIndex+2);<br />
&nbsp;&nbsp;&nbsp;hour = date.substring(hIndex,hIndex+2);<br />
&nbsp;&nbsp;&nbsp;if(!isNumber(hour)||hour&gt;"23" || hour&lt; "00") {alert("日期格式错误"); return ""};<br />
&nbsp;&nbsp;&nbsp;if(!isNumber(min)||min&gt;"59" || min&lt; "00") {alert("日期格式错误"); return ""};<br />
&nbsp;&nbsp;&nbsp;if(!isNumber(sec)||sec&gt;"59" || sec&lt; "00") {alert("日期格式错误"); return ""};<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;else if (!(sIndex==-1&amp;&amp;hIndex==-1&amp;&amp;mIndex==-1))<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("日期格式错误");<br />
&nbsp;&nbsp;&nbsp;return "";<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; retDate = retDate.replace(/HH/i,hour); <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; retDate = retDate.replace(/mm/i,min); <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; retDate = retDate.replace(/ss/i,sec); <br />
&nbsp;&nbsp;return retDate;<br />
}</p>
<img src ="http://www.blogjava.net/primeton/aggbug/146034.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/primeton/" target="_blank">primeton</a> 2007-09-18 08:46 <a href="http://www.blogjava.net/primeton/archive/2007/09/18/146034.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>日历控件</title><link>http://www.blogjava.net/primeton/archive/2007/09/18/146033.html</link><dc:creator>primeton</dc:creator><author>primeton</author><pubDate>Tue, 18 Sep 2007 00:42:00 GMT</pubDate><guid>http://www.blogjava.net/primeton/archive/2007/09/18/146033.html</guid><wfw:comment>http://www.blogjava.net/primeton/comments/146033.html</wfw:comment><comments>http://www.blogjava.net/primeton/archive/2007/09/18/146033.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.blogjava.net/primeton/comments/commentRss/146033.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/primeton/services/trackbacks/146033.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: /*** calendar.js author:Chen Chun** 功能描述:本日历控件(以下简称控件)采用隐藏层的实现方式，避免了弹出窗口式可能被浏览器拦截的麻烦。* 控件的调出函数被触发后，在指定位置会弹出控件面板。向文本框输入数据时，先要选择日期，然后用鼠标* 点击面板上某一天的单元格。这时，日历控件会把你选择的时间自动填到文本框里。控件面板最上面显示的是* 年和...&nbsp;&nbsp;<a href='http://www.blogjava.net/primeton/archive/2007/09/18/146033.html'>阅读全文</a><img src ="http://www.blogjava.net/primeton/aggbug/146033.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/primeton/" target="_blank">primeton</a> 2007-09-18 08:42 <a href="http://www.blogjava.net/primeton/archive/2007/09/18/146033.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>普元常用校验脚本2:check.js</title><link>http://www.blogjava.net/primeton/archive/2007/09/16/145498.html</link><dc:creator>primeton</dc:creator><author>primeton</author><pubDate>Sun, 16 Sep 2007 04:46:00 GMT</pubDate><guid>http://www.blogjava.net/primeton/archive/2007/09/16/145498.html</guid><wfw:comment>http://www.blogjava.net/primeton/comments/145498.html</wfw:comment><comments>http://www.blogjava.net/primeton/archive/2007/09/16/145498.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/primeton/comments/commentRss/145498.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/primeton/services/trackbacks/145498.html</trackback:ping><description><![CDATA[<p>/*<br />
-------------------------------------------------------------------------------<br />
文件名称：check.js<br />
说&nbsp;&nbsp;&nbsp; 明：JavaScript脚本，用于检查网页提交表单的输入数据<br />
版&nbsp;&nbsp;&nbsp; 本：1.0<br />
修改纪录:<br />
---------------------------------------------------------------------------<br />
时间&nbsp;&nbsp;修改人&nbsp;&nbsp;说明<br />
2002-8-29&nbsp;libo&nbsp;&nbsp;创建<br />
2004-03-08&nbsp; xueyishan&nbsp;&nbsp;&nbsp; 修改,加入checkMobile()<br />
2005-06-01&nbsp; zhouming&nbsp;&nbsp;&nbsp; 修改了isDate()，支持格式<br />
------------------------------------------------------------------------------- &nbsp;<br />
*/</p>
<p>/*<br />
用途：校验ip地址的格式<br />
输入：strIP：ip地址<br />
返回：如果通过验证返回true,否则返回false；&nbsp;<br />
*/<br />
function isIP(strIP) { <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (isNull(strIP)) return false;<br />
&nbsp;var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g //匹配IP地址的正则表达式<br />
&nbsp;if(re.test(strIP))<br />
&nbsp;{<br />
&nbsp; if( RegExp.$1 &lt;256 &amp;&amp; RegExp.$2&lt;256 &amp;&amp; RegExp.$3&lt;256 &amp;&amp; RegExp.$4&lt;256) return true;<br />
&nbsp;}<br />
&nbsp;return false; <br />
} </p>
<p>/*<br />
用途：检查输入字符串是否为空或者全部都是空格<br />
输入：str<br />
返回：<br />
&nbsp;如果全是空返回true,否则返回false<br />
*/<br />
function isNull( str ){<br />
&nbsp;if ( str == "" ) return true;<br />
&nbsp;var regu = "^[ ]+$";<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;return re.test(str);<br />
}</p>
<p><br />
/*<br />
用途：检查输入对象的值是否符合整数格式<br />
输入：str 输入的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isInteger( str ){&nbsp; <br />
&nbsp;var regu = /^[-]{0,1}[0-9]{1,}$/;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return regu.test(str);<br />
}</p>
<p>/*<br />
用途：检查输入手机号码是否正确<br />
输入：<br />
&nbsp;s：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function checkMobile( s ){&nbsp;&nbsp; <br />
&nbsp;var regu =/^[1][3][0-9]{9}$/;<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test(s)) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}else{<br />
&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}<br />
&nbsp;<br />
&nbsp;<br />
/*<br />
用途：检查输入字符串是否符合正整数格式<br />
输入：<br />
&nbsp;s：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isNumber( s ){&nbsp;&nbsp; <br />
&nbsp;var regu = "^[0-9]+$";<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (s.search(re) != -1) {<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} else {<br />
&nbsp;&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}</p>
<p>/*<br />
用途：检查输入字符串是否是带小数的数字格式,可以是负数<br />
输入：<br />
&nbsp;s：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isDecimal( str ){&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(isInteger(str)) return true;<br />
&nbsp;var re = /^[-]{0,1}(\d+)[\.]+(\d+)$/;<br />
&nbsp;if (re.test(str)) {<br />
&nbsp;&nbsp;&nbsp; if(RegExp.$1==0&amp;&amp;RegExp.$2==0) return false;<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} else {<br />
&nbsp;&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}</p>
<p>/*<br />
用途：检查输入对象的值是否符合端口号格式<br />
输入：str 输入的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isPort( str ){&nbsp; <br />
&nbsp;return (isNumber(str) &amp;&amp; str&lt;65536);<br />
}</p>
<p>/*<br />
用途：检查输入对象的值是否符合E-Mail格式<br />
输入：str 输入的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isEmail( str ){&nbsp; <br />
&nbsp;var myReg = /^[-_A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/; <br />
&nbsp;if(myReg.test(str)) return true; <br />
&nbsp;return false; <br />
}</p>
<p>/*<br />
用途：检查输入字符串是否符合金额格式<br />
&nbsp;格式定义为带小数的正数，小数点后最多三位<br />
输入：<br />
&nbsp;s：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isMoney( s ){&nbsp;&nbsp; <br />
&nbsp;var regu = "^[0-9]+[\.][0-9]{0,3}$";<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test(s)) {<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} else {<br />
&nbsp;&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}<br />
/*<br />
用途：检查输入字符串是否只由英文字母和数字和下划线组成<br />
输入：<br />
&nbsp;s：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isNumberOr_Letter( s ){&nbsp;&nbsp;&nbsp; //判断是否是数字或字母<br />
&nbsp;var regu = "^[0-9a-zA-Z\_]+$";<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test(s)) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}else{<br />
&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}<br />
/*<br />
用途：检查输入字符串是否只由英文字母和数字组成<br />
输入：<br />
&nbsp;s：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isNumberOrLetter( s ){&nbsp;&nbsp;&nbsp; //判断是否是数字或字母<br />
&nbsp;var regu = "^[0-9a-zA-Z]+$";<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test(s)) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}else{<br />
&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}<br />
&nbsp;/*<br />
用途：检查输入字符串是否只由汉字、字母、数字组成<br />
输入：<br />
&nbsp;value：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isChinaOrNumbOrLett( s ){&nbsp;&nbsp;&nbsp; //判断是否是汉字、字母、数字组成<br />
&nbsp;var regu = "^[0-9a-zA-Z\u4e00-\u9fa5]+$";&nbsp;&nbsp; <br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test(s)) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}else{<br />
&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}</p>
<p>/*<br />
用途：判断是否是日期<br />
输入：date：日期；fmt：日期格式<br />
返回：如果通过验证返回true,否则返回false<br />
*/<br />
function isDate( date, fmt ) {<br />
&nbsp;&nbsp;&nbsp; if (fmt==null) fmt="yyyyMMdd";<br />
&nbsp;&nbsp;&nbsp; var yIndex = fmt.indexOf("yyyy");<br />
&nbsp;&nbsp;&nbsp; if(yIndex==-1) return false;<br />
&nbsp;&nbsp; var year = date.substring(yIndex,yIndex+4);<br />
&nbsp;&nbsp; var mIndex = fmt.indexOf("MM");<br />
&nbsp;&nbsp;&nbsp; if(mIndex==-1) return false;<br />
&nbsp;&nbsp; var month = date.substring(mIndex,mIndex+2);<br />
&nbsp;&nbsp; var dIndex = fmt.indexOf("dd");<br />
&nbsp;&nbsp;&nbsp; if(dIndex==-1) return false;<br />
&nbsp;&nbsp; var day = date.substring(dIndex,dIndex+2);<br />
&nbsp;&nbsp;&nbsp; if(!isNumber(year)||year&gt;"2100" || year&lt; "1900") return false;<br />
&nbsp;&nbsp;&nbsp; if(!isNumber(month)||month&gt;"12" || month&lt; "01") return false;<br />
&nbsp;&nbsp;&nbsp; if(day&gt;getMaxDay(year,month) || day&lt; "01") return false;<br />
&nbsp;&nbsp;&nbsp; return true;<br />
}</p>
<p>function getMaxDay(year,month) {<br />
&nbsp;if(month==4||month==6||month==9||month==11)<br />
&nbsp;&nbsp;return "30";<br />
&nbsp;if(month==2)<br />
&nbsp;&nbsp;if(year%4==0&amp;&amp;year%100!=0 || year%400==0)<br />
&nbsp;&nbsp;&nbsp;return "29";<br />
&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;return "28";<br />
&nbsp;return "31";<br />
}</p>
<p>/*<br />
用途：字符1是否以字符串2结束<br />
输入：str1：字符串；str2：被包含的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isLastMatch(str1,str2)<br />
{&nbsp; <br />
&nbsp;&nbsp; var index = str1.lastIndexOf(str2);<br />
&nbsp;&nbsp; if(str1.length==index+str2.length) return true;<br />
&nbsp;&nbsp; return false;<br />
}</p>
<p><br />
/*<br />
用途：字符1是否以字符串2开始<br />
输入：str1：字符串；str2：被包含的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isFirstMatch(str1,str2)<br />
{&nbsp; <br />
&nbsp;&nbsp; var index = str1.indexOf(str2);<br />
&nbsp;&nbsp; if(index==0) return true;<br />
&nbsp;&nbsp; return false;<br />
}</p>
<p>/*<br />
用途：字符1是包含字符串2<br />
输入：str1：字符串；str2：被包含的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isMatch(str1,str2)<br />
{&nbsp; <br />
&nbsp;&nbsp; var index = str1.indexOf(str2);<br />
&nbsp;&nbsp; if(index==-1) return false;<br />
&nbsp;&nbsp; return true;<br />
}</p>
<p><br />
/*<br />
用途：检查输入的起止日期是否正确，规则为两个日期的格式正确，<br />
&nbsp;且结束如期&gt;=起始日期<br />
输入：<br />
&nbsp;startDate：起始日期，字符串<br />
&nbsp;endDate：结束如期，字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function checkTwoDate( startDate,endDate ) {<br />
&nbsp;if( !isDate(startDate) ) {<br />
&nbsp;&nbsp;alert("起始日期不正确!");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;} else if( !isDate(endDate) ) {<br />
&nbsp;&nbsp;alert("终止日期不正确!");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;} else if( startDate &gt; endDate ) {<br />
&nbsp;&nbsp;alert("起始日期不能大于终止日期!");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/*<br />
用途：检查输入的Email信箱格式是否正确<br />
输入：<br />
&nbsp;strEmail：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function checkEmail(strEmail) { <br />
&nbsp;//var emailReg = /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/; <br />
&nbsp;var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;<br />
&nbsp;if( emailReg.test(strEmail) ){<br />
&nbsp;&nbsp;return true; <br />
&nbsp;}else{<br />
&nbsp;&nbsp;alert("您输入的Email地址格式不正确！");<br />
&nbsp;&nbsp;return false; <br />
&nbsp;}<br />
}</p>
<p>/*<br />
用途：检查输入的电话号码格式是否正确<br />
输入：<br />
&nbsp;strPhone：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function checkPhone( strPhone ) { <br />
&nbsp;var phoneRegWithArea = /^[0][1-9]{2,3}-[0-9]{5,10}$/; <br />
&nbsp;var phoneRegNoArea = /^[1-9]{1}[0-9]{5,8}$/; <br />
&nbsp;var prompt = "您输入的电话号码不正确!"<br />
&nbsp;if( strPhone.length &gt; 9 ) {<br />
&nbsp;&nbsp;if( phoneRegWithArea.test(strPhone) ){<br />
&nbsp;&nbsp;&nbsp;return true; <br />
&nbsp;&nbsp;}else{<br />
&nbsp;&nbsp;&nbsp;alert( prompt );<br />
&nbsp;&nbsp;&nbsp;return false; <br />
&nbsp;&nbsp;}<br />
&nbsp;}else{<br />
&nbsp;&nbsp;if( phoneRegNoArea.test( strPhone ) ){<br />
&nbsp;&nbsp;&nbsp;return true; <br />
&nbsp;&nbsp;}else{<br />
&nbsp;&nbsp;&nbsp;alert( prompt );<br />
&nbsp;&nbsp;&nbsp;return false; <br />
&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;}<br />
}<br />
&nbsp;</p>
<p>/*<br />
用途：检查复选框被选中的数目<br />
输入：<br />
&nbsp;checkboxID：字符串<br />
返回：<br />
&nbsp;返回该复选框中被选中的数目&nbsp;<br />
*/&nbsp;<br />
function checkSelect( checkboxID ) {<br />
&nbsp;var check = 0;<br />
&nbsp;var i=0;<br />
&nbsp;if( document.all(checkboxID).length &gt; 0 ) { <br />
&nbsp;&nbsp;for(&nbsp; i=0; i&lt;document.all(checkboxID).length; i++ ) {<br />
&nbsp;&nbsp;&nbsp;if( document.all(checkboxID).item( i ).checked&nbsp; ) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;check += 1;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;}<br />
&nbsp;}else{<br />
&nbsp;&nbsp;if( document.all(checkboxID).checked )<br />
&nbsp;&nbsp;&nbsp;check = 1;<br />
&nbsp;}<br />
&nbsp;return check;<br />
}</p>
<p>function getTotalBytes(varField) {<br />
&nbsp;if(varField == null)<br />
&nbsp;&nbsp;return -1;<br />
&nbsp;<br />
&nbsp;var totalCount = 0;<br />
&nbsp;for (i = 0; i&lt; varField.value.length; i++) {<br />
&nbsp;&nbsp;if (varField.value.charCodeAt(i) &gt; 127) <br />
&nbsp;&nbsp;&nbsp;totalCount += 2;<br />
&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;totalCount++ ;<br />
&nbsp;}<br />
&nbsp;return totalCount;<br />
}</p>
<p>function getFirstSelectedValue( checkboxID ){<br />
&nbsp;var value = null;<br />
&nbsp;var i=0;<br />
&nbsp;if( document.all(checkboxID).length &gt; 0 ){ <br />
&nbsp;&nbsp;for(&nbsp; i=0; i&lt;document.all(checkboxID).length; i++ ){<br />
&nbsp;&nbsp;&nbsp;if( document.all(checkboxID).item( i ).checked ){<br />
&nbsp;&nbsp;&nbsp;&nbsp;value = document.all(checkboxID).item(i).value;<br />
&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;}<br />
&nbsp;} else {<br />
&nbsp;&nbsp;if( document.all(checkboxID).checked )<br />
&nbsp;&nbsp;&nbsp;value = document.all(checkboxID).value;<br />
&nbsp;&nbsp;}<br />
&nbsp;return value;<br />
}&nbsp;</p>
<p>function getFirstSelectedIndex( checkboxID ){<br />
&nbsp;var value = -2;<br />
&nbsp;var i=0;<br />
&nbsp;if( document.all(checkboxID).length &gt; 0 ){ <br />
&nbsp;&nbsp;for(&nbsp; i=0; i&lt;document.all(checkboxID).length; i++ ) {<br />
&nbsp;&nbsp;&nbsp;if( document.all(checkboxID).item( i ).checked&nbsp; ) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;value = i;<br />
&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;}<br />
&nbsp;} else {<br />
&nbsp;&nbsp;if( document.all(checkboxID).checked )<br />
&nbsp;&nbsp;&nbsp;value = -1;<br />
&nbsp;}<br />
&nbsp;return value;<br />
}<br />
&nbsp;<br />
function selectAll( checkboxID,status )&nbsp;{<br />
&nbsp;if( document.all(checkboxID) == null)<br />
&nbsp;&nbsp;return;</p>
<p>&nbsp;if( document.all(checkboxID).length &gt; 0 ){ <br />
&nbsp;&nbsp;for(&nbsp; i=0; i&lt;document.all(checkboxID).length; i++ )&nbsp;{<br />
&nbsp;&nbsp;&nbsp;document.all(checkboxID).item( i ).checked = status;<br />
&nbsp;&nbsp;}<br />
&nbsp;} else {<br />
&nbsp;&nbsp;document.all(checkboxID).checked = status;<br />
&nbsp;}<br />
}</p>
<p>function selectInverse( checkboxID ) {<br />
&nbsp;if( document.all(checkboxID) == null)<br />
&nbsp;&nbsp;return;</p>
<p>&nbsp;if( document.all(checkboxID).length &gt; 0 ) { <br />
&nbsp;&nbsp;for(&nbsp; i=0; i&lt;document.all(checkboxID).length; i++ ) {<br />
&nbsp;&nbsp;&nbsp;document.all(checkboxID).item( i ).checked = !document.all(checkboxID).item( i ).checked;<br />
&nbsp;&nbsp;}<br />
&nbsp;} else {<br />
&nbsp;&nbsp;document.all(checkboxID).checked = !document.all(checkboxID).checked;<br />
&nbsp;}<br />
}</p>
<p>function checkDate( value ) {<br />
&nbsp;if(value=='') return true;<br />
&nbsp;if(value.length!=8 || !isNumber(value)) return false;&nbsp; <br />
&nbsp;var year = value.substring(0,4);<br />
&nbsp;if(year&gt;"2100" || year&lt; "1900")&nbsp;return false;<br />
&nbsp;<br />
&nbsp;var month = value.substring(4,6);<br />
&nbsp;if(month&gt;"12" || month&lt; "01") return false;<br />
&nbsp;<br />
&nbsp;var day = value.substring(6,8);<br />
&nbsp;if(day&gt;getMaxDay(year,month) || day&lt; "01") return false;<br />
&nbsp;<br />
&nbsp;return true;&nbsp; <br />
}</p>
<p>/*<br />
用途：检查输入的起止日期是否正确，规则为两个日期的格式正确或都为空<br />
&nbsp;且结束日期&gt;=起始日期<br />
输入：<br />
&nbsp;startDate：起始日期，字符串<br />
&nbsp;endDate：&nbsp; 结束日期，字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function checkPeriod( startDate,endDate ) {<br />
&nbsp;if( !checkDate(startDate) ) {<br />
&nbsp;&nbsp;alert("起始日期不正确!");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;} else if( !checkDate(endDate) ) {<br />
&nbsp;&nbsp;alert("终止日期不正确!");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;} else if( startDate &gt; endDate ) {<br />
&nbsp;&nbsp;alert("起始日期不能大于终止日期!");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/*<br />
用途：检查证券代码是否正确<br />
输入：<br />
&nbsp;secCode:证券代码<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function checkSecCode( secCode ) {<br />
&nbsp;if( secCode.length !=6 ){<br />
&nbsp;&nbsp;alert("证券代码长度应该为6位");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;if(!isNumber( secCode ) ){<br />
&nbsp;&nbsp;alert("证券代码只能包含数字");&nbsp;&nbsp;<br />
&nbsp;&nbsp;return false;<br />
&nbsp; &nbsp; }<br />
&nbsp;return true;<br />
}</p>
<p>/****************************************************<br />
function&nbsp;:&nbsp;cTrim(sInputString,iType)<br />
description&nbsp;:&nbsp;字符串去空格的函数<br />
parameters&nbsp;:&nbsp;iType：&nbsp;1=去掉字符串左边的空格<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2=去掉字符串左边的空格<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0=去掉字符串左边和右边的空格<br />
return value:&nbsp;去掉空格的字符串<br />
****************************************************/<br />
function cTrim(sInputString,iType)<br />
{<br />
&nbsp;var sTmpStr = ' ';<br />
&nbsp;var i = -1;<br />
&nbsp;<br />
&nbsp;if(iType == 0 || iType == 1)<br />
&nbsp;{<br />
&nbsp;&nbsp;while(sTmpStr == ' ')<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;++i;<br />
&nbsp;&nbsp;&nbsp;sTmpStr = sInputString.substr(i,1);<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;sInputString = sInputString.substring(i);<br />
&nbsp;}&nbsp;<br />
&nbsp;if(iType == 0 || iType == 2)<br />
&nbsp;{<br />
&nbsp;&nbsp;sTmpStr = ' ';<br />
&nbsp;&nbsp;i = sInputString.length;<br />
&nbsp;&nbsp;while(sTmpStr == ' ')<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;--i;<br />
&nbsp;&nbsp;&nbsp;sTmpStr = sInputString.substr(i,1);<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;sInputString = sInputString.substring(0,i+1);<br />
&nbsp;}<br />
&nbsp;return sInputString;<br />
}</p>
<p>/*<br />
-------------------------------------------------------------------------------<br />
说&nbsp;&nbsp;&nbsp; 明：JavaScript脚本，验证表单中的数据项&nbsp; begin<br />
------------------------------------------------------------------------------- &nbsp;<br />
*/<br />
function checkForm(objFrm){<br />
&nbsp;var len = 0;<br />
&nbsp;len = objFrm.elements.length;</p>
<p>&nbsp;var i = 0;<br />
&nbsp;var objCheck;<br />
&nbsp;//文本框<br />
&nbsp;for(i = 0; i &lt; len; i ++){<br />
&nbsp;&nbsp;objCheck = objFrm.elements[i];<br />
&nbsp;&nbsp;if(objCheck.type =="text" &amp;&amp; !f_checkTextValid(objCheck) ){<br />
&nbsp;&nbsp;&nbsp;return false;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;//下拉框<br />
&nbsp;for(i = 0; i &lt; len; i ++){<br />
&nbsp;&nbsp;objCheck = objFrm.elements[i];<br />
&nbsp;&nbsp;if(objCheck.type =="select-one" &amp;&amp; !f_checkSelectValid(objCheck) ){<br />
&nbsp;&nbsp;&nbsp;return false;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;//时间段有效<br />
&nbsp;if( f_checkStartAndEndDate(objFrm) == false) return false;<br />
&nbsp;<br />
&nbsp;return true;<br />
}<br />
function f_checkSelectValid(obj){<br />
&nbsp;//alert("check select");<br />
&nbsp;if(obj.options.length &lt;= 0){<br />
&nbsp;&nbsp;alert("下拉选框无数据!");<br />
&nbsp;&nbsp;return false;&nbsp;<br />
&nbsp;} <br />
&nbsp;return true;<br />
}<br />
function f_checkStartAndEndDate(frm){<br />
&nbsp;var len = frm.elements.length;<br />
&nbsp;if(len == null &amp;&amp; len == 0) return true;<br />
&nbsp;var i=0;<br />
&nbsp;var temp;<br />
&nbsp;var objCheck;<br />
&nbsp;var objStartDate;<br />
&nbsp;var objEndDate;<br />
&nbsp;//alert("start date period check");<br />
&nbsp;try{<br />
&nbsp;&nbsp;for(i=0; i&lt; len ; i++){<br />
&nbsp;&nbsp;&nbsp;objCheck = frm.elements[i];<br />
&nbsp;&nbsp;&nbsp;temp = objCheck.name;<br />
&nbsp;&nbsp;&nbsp;if( temp.indexOf("startDate") &gt;0 ||temp.indexOf("beginDate")&gt;0 )<br />
&nbsp;&nbsp;&nbsp;&nbsp;objStartDate = objCheck;<br />
&nbsp;&nbsp;&nbsp;if( temp.indexOf("endDate") &gt; 0 )<br />
&nbsp;&nbsp;&nbsp;&nbsp;objEndDate = objCheck;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;//alert(objStartDate.value);<br />
&nbsp;&nbsp;//alert(objEndDate.value);<br />
&nbsp;&nbsp;if(objStartDate.value==null || objStartDate.value =="" || objStartDate.value ==null || objStartDate.value ==""){<br />
&nbsp;&nbsp;&nbsp;return true;<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;return checkTwoDate(objStartDate.value, objEndDate.value);&nbsp;<br />
&nbsp;&nbsp;//alert("end date period check");<br />
&nbsp;}catch(E){}<br />
&nbsp;return true;<br />
}</p>
<p>function f_checkTextValid(obj){<br />
&nbsp;//不能为空<br />
&nbsp;if(obj.getAttribute("isNeed") != null){<br />
&nbsp;&nbsp;if(f_isNotNull(obj) == false) return false;<br />
&nbsp;}<br />
&nbsp;//不能超过长度<br />
&nbsp;if(obj.getAttribute("maxlength") != null){<br />
&nbsp;&nbsp;if(f_checkLength(obj) == false) return false;<br />
&nbsp;}<br />
&nbsp;var checkType ="";<br />
&nbsp;checkType = obj.getAttribute("checkType");<br />
&nbsp;if(checkType==null||checkType=="") return true;<br />
&nbsp;//<br />
&nbsp;if (checkType.indexOf("number") &gt;=0){<br />
&nbsp;&nbsp;if(f_isNumber(obj) == false)&nbsp; return false;<br />
&nbsp;&nbsp;if(f_checkNumType(obj,checkType) == false)&nbsp; return false;<br />
&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;//<br />
&nbsp;if (checkType.indexOf("positive") &gt;=0){<br />
&nbsp;&nbsp;if(f_isNumber(obj) == false)&nbsp; return false;<br />
&nbsp;&nbsp;if(f_isPositive(obj)==false)&nbsp; return false;<br />
&nbsp;&nbsp;if(f_checkNumType(obj,checkType) == false)&nbsp; return false;<br />
&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;if (checkType.indexOf("date") &gt;=0){<br />
&nbsp;&nbsp;if(f_checkDate(obj) == false) return false;<br />
&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;/*<br />
&nbsp;switch(checkType){<br />
&nbsp;&nbsp;case "number": if(f_isNumber(obj) == false) return false;break;<br />
&nbsp;&nbsp;case "date": if(f_checkDate(obj) == false) return false;break;<br />
&nbsp;&nbsp;default:<br />
&nbsp;}<br />
&nbsp;*/<br />
&nbsp;return true;<br />
}</p>
<p>function f_isNotNull(obj){<br />
&nbsp;if(obj.value == ""){<br />
&nbsp;&nbsp;f_alert(obj, " 不允许为空值！");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>function f_isNumber(obj){<br />
&nbsp;if(isNaN(obj.value)){<br />
&nbsp;&nbsp; f_alert(obj," 应为数值类型");<br />
&nbsp;&nbsp;return false;&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;return true;</p>
<p>}<br />
function f_checkDate(obj) {<br />
&nbsp;if(checkDate(obj.value) ==false){<br />
&nbsp;&nbsp; f_alert(obj," 不是合法日期格式！");<br />
&nbsp;&nbsp;return false;&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>function f_checkLength(obj){<br />
&nbsp;if(getTotalBytes(obj) &gt; Math.abs( obj.getAttribute("maxlength") ) ){<br />
&nbsp;&nbsp; f_alert(obj," 超出长度限制!");<br />
&nbsp;&nbsp;return false;&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;return true;<br />
&nbsp;<br />
}</p>
<p>function&nbsp; f_alert(obj,alertStr){<br />
&nbsp;var fielName = obj.getAttribute("fieldName");<br />
&nbsp;if(fielName == null)<br />
&nbsp;&nbsp;fielName = "";<br />
&nbsp;alert(fielName + "\n" +alertStr);<br />
&nbsp;obj.select();<br />
&nbsp;obj.focus();<br />
}</p>
<p>function f_checkNumType(obj, numType){<br />
&nbsp;//假设: 已经进行数字类型判断<br />
&nbsp;<br />
&nbsp;var strTemp;<br />
&nbsp;var numpric;<br />
&nbsp;var numLen;<br />
&nbsp;var strArr;<br />
&nbsp;var defaultLen = 19;<br />
&nbsp;var defaultpric = 5;</p>
<p>&nbsp;try{<br />
&nbsp;&nbsp;if(numType == null|| numType =="") return f_checkNumLenPrec(obj,defaultLen, defaultpric);<br />
&nbsp;&nbsp;if(numType.indexOf("(") &lt; 0 || numType.indexOf(")") &lt; 0 ) return f_checkNumLenPrec(obj,defaultLen, defaultpric);<br />
&nbsp;&nbsp;strTemp = numType.substr( numType.indexOf("(") + 1 ,numType.indexOf(")") - numType.indexOf("(") -1 );<br />
&nbsp;&nbsp;if(strTemp == null||strTemp =="") return f_checkNumLenPrec(obj,defaultLen, defaultpric);<br />
&nbsp;&nbsp;strArr = strTemp.split(",");&nbsp;<br />
&nbsp;&nbsp;numLen = Math.abs( strArr[0] ); <br />
&nbsp;&nbsp;numpric = Math.abs( strArr[1] );&nbsp;<br />
&nbsp;&nbsp;return f_checkNumLenPrec(obj,numLen, numpric);<br />
&nbsp;}catch(e){<br />
&nbsp;&nbsp;alert("in f_checkNumType = " + e);<br />
&nbsp;&nbsp; return f_checkNumLenPrec(obj,defaultLen, defaultpric);<br />
&nbsp;}</p>
<p>}</p>
<p>function f_checkNumLenPrec(obj, len, pric){<br />
&nbsp;var numReg;<br />
&nbsp;var value = obj.value;<br />
&nbsp;var strValueTemp, strInt, strDec;&nbsp;<br />
&nbsp;//alert(value + "=====" + len + "====="+ pric);<br />
&nbsp;try{&nbsp;<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;numReg =/[\-]/;<br />
&nbsp;&nbsp;strValueTemp = value.replace(numReg, "");<br />
&nbsp;&nbsp;strValueTemp = strValueTemp.replace(numReg, "");<br />
&nbsp;&nbsp;//整数<br />
&nbsp;&nbsp;if(pric==0){<br />
&nbsp;&nbsp;&nbsp;numReg =/[\.]/;<br />
&nbsp;&nbsp;&nbsp;//alert(numReg.test(value));<br />
&nbsp;&nbsp;&nbsp;if(numReg.test(value) == true){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "输入必须为整数类型!");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;&nbsp;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;if(strValueTemp.indexOf(".") &lt; 0 ){<br />
&nbsp;&nbsp;&nbsp;//alert("lennth==" + strValueTemp);&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;if(strValueTemp.length &gt;( len - pric)){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "整数位不能超过"+ (len - pric) +"位");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;}else{<br />
&nbsp;&nbsp;&nbsp;strInt = strValueTemp.substr( 0, strValueTemp.indexOf(".") );&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;//alert("lennth==" + strInt);&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;if(strInt.length &gt;( len - pric)){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "整数位不能超过"+ (len - pric) +"位");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;strDec = strValueTemp.substr( (strValueTemp.indexOf(".")+1), strValueTemp.length );&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;//alert("pric==" + strDec);&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;if(strDec.length &gt; pric){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "小数位不能超过"+&nbsp; pric +"位");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;return true;<br />
&nbsp;}catch(e){<br />
&nbsp;&nbsp;alert("in f_checkNumLenPrec = " + e);<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}&nbsp;<br />
}</p>
<p>function f_isPositive(obj){<br />
&nbsp;var numReg =/[\-]/;<br />
&nbsp;if(numReg.test(obj.value) == true){<br />
&nbsp;&nbsp;f_alert(obj, "必须为正数!");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;return true;<br />
&nbsp;<br />
}</p>
<p><br />
/*<br />
function selectedCheckboxCount(form)<br />
功能说明：对Form中选中的可选项计数</p>
<p>参数说明：<br />
form:指定的表单<br />
*/<br />
function selectedCheckboxCount(form){<br />
&nbsp;var length =0;<br />
&nbsp;var i=0;<br />
&nbsp;var count =0;<br />
&nbsp;eles = form.elements;<br />
&nbsp;while(i&lt;eles.length){<br />
&nbsp;&nbsp;obj= eles.item(i);<br />
//&nbsp;&nbsp;type = obj.attributes.item("type").nodeValue;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type = obj.type;<br />
&nbsp;&nbsp;if(type == "checkbox"){<br />
&nbsp;&nbsp;&nbsp;if(obj.checked){<br />
&nbsp;&nbsp;&nbsp;&nbsp;count++;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;i++;<br />
&nbsp;}<br />
&nbsp;return count;<br />
}</p>
<p>//得到字节长度<br />
function getByteLen(str)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var l = str.length;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var n = l;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for ( var i=0; i&lt;l; i++ )<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( str.charCodeAt(i) &lt;0 || str.charCodeAt(i) &gt;255 )<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; n=n+1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return n<br />
}</p>
<p>/*<br />
说明：<br />
1.清除表格中的数据(0.0 和 0)<br />
2.如果cell中没有数据，则自动加上一个空格<br />
3.清除空白行的checkbox</p>
<p>参数：<br />
clearzero:是否清除"0"、"0.0"，false不清除、true清除（默认为true）<br />
tablename:要清除的表格名字，默认为sortTable<br />
*/<br />
function clear_table(clearzero,tablename)<br />
{<br />
&nbsp;var tobject;<br />
&nbsp;if(tablename==null)<br />
&nbsp;&nbsp;tobject=gmobj("sortTable");<br />
&nbsp;else<br />
&nbsp;&nbsp;tobject=gmobj(tablename);<br />
&nbsp;//如果table未定义，则不进行过滤<br />
&nbsp;<br />
&nbsp;if(tobject==null)<br />
&nbsp;&nbsp;return;<br />
&nbsp;&nbsp;<br />
&nbsp;<br />
&nbsp;//如果函数调用参数为空，表示要清除0、0.0；反之，不要清除0、0.0。<br />
&nbsp;var clear = (clearzero==null)?true:clearzero;</p>
<p>&nbsp;//清除0、0.0，填补空格<br />
&nbsp;var rows = tobject.rows;<br />
&nbsp;var j=0;<br />
&nbsp;for(var i=0;i&lt;rows.length;i++)<br />
&nbsp;{<br />
&nbsp;&nbsp;//取得第一个cell的属性clear，如果为1，表示该行没有数据，则清除该行所有数据<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;while(tobject.rows[i].cells[j] != null)<br />
&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(clear)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(tobject.rows[i].cells[j].innerHTML==0 ||tobject.rows[i].cells[j].innerHTML==0.0||tobject.rows[i].cells[j].innerHTML=="")<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tobject.rows[i].cells[j].innerText=" ";<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (tobject.rows[i].cells[j].innerHTML=="")<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tobject.rows[i].cells[j].innerText=" ";<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;j++;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;j=0;<br />
&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;&nbsp;&nbsp; return true;<br />
}</p>
<p>function gmobj(mtxt)&nbsp; /* Get object by object name */<br />
{<br />
&nbsp; if (document.getElementById) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m=document.getElementById(mtxt);<br />
&nbsp; } else if (document.all) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m=document.all[mtxt];<br />
&nbsp; } else if (document.layers) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m=document.layers[mtxt];<br />
&nbsp; }<br />
&nbsp; return m;<br />
}<br />
/*<br />
-------------------------------------------------------------------------------<br />
说&nbsp;&nbsp;&nbsp; 明：JavaScript脚本，验证表单中的数据项&nbsp; end<br />
------------------------------------------------------------------------------- &nbsp;<br />
*/</p>
<p>/*<br />
用途：检查输入字符串是否是带小数的数字格式,可以是负数(并且满足规定的精度)<br />
输入：str：字符串<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; l：总位数<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; d：小数点后位数<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function isDecimal( str,l,d ){&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(isInteger(str)) {<br />
&nbsp;&nbsp;&nbsp; if (l==null)&nbsp; return true;<br />
&nbsp;&nbsp;&nbsp; if (str&lt;0) l--;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (str.length&lt;=l) return true;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var re = /^[-]{0,1}(\d+)[\.]+(\d+)$/;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (re.test(str)) {<br />
&nbsp;&nbsp;if (l==null)&nbsp; return true;<br />
&nbsp;&nbsp;if (d==null) d=0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(RegExp.$1==0&amp;&amp;RegExp.$2==0) return false;<br />
&nbsp;&nbsp;if (RegExp.$1.length+RegExp.$2.length&lt;=l<br />
&nbsp;&nbsp;&nbsp;&amp;&amp; RegExp.$2.length&lt;=d)&nbsp; return true;<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;return false;<br />
}<br />
</p>
<img src ="http://www.blogjava.net/primeton/aggbug/145498.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/primeton/" target="_blank">primeton</a> 2007-09-16 12:46 <a href="http://www.blogjava.net/primeton/archive/2007/09/16/145498.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>普元常用校验脚本DataFormCheck.js</title><link>http://www.blogjava.net/primeton/archive/2007/09/14/145168.html</link><dc:creator>primeton</dc:creator><author>primeton</author><pubDate>Fri, 14 Sep 2007 08:16:00 GMT</pubDate><guid>http://www.blogjava.net/primeton/archive/2007/09/14/145168.html</guid><wfw:comment>http://www.blogjava.net/primeton/comments/145168.html</wfw:comment><comments>http://www.blogjava.net/primeton/archive/2007/09/14/145168.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/primeton/comments/commentRss/145168.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/primeton/services/trackbacks/145168.html</trackback:ping><description><![CDATA[<p>/******************************************************/<br />
/* 文件名:DataFormCheck.js&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */<br />
/* 功&nbsp; 能:基于自定义属性的Javascript校验函数库&nbsp;&nbsp;&nbsp;&nbsp; */<br />
/* 作&nbsp; 者:陈春&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */<br />
/* 日&nbsp; 期:2005-5-11 10:46&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */<br />
/******************************************************/</p>
<p>/**<br />
* 目前所支持的校验类型有：<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|&nbsp;&nbsp;类&nbsp;型&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;校验函数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;描&nbsp;述&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|number&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_number(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|数字&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|naturalnumber&nbsp;&nbsp;&nbsp;|f_check_naturalnumber(obj)&nbsp;&nbsp;&nbsp;&nbsp;|正整数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|integer&nbsp;&nbsp;&nbsp;&nbsp;|f_check_integer(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|整数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|float&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_float(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|实数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|zh&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_zh(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|汉字&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|lowercase&nbsp;&nbsp;&nbsp;&nbsp;|f_check_lowercase(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|小写英文字母&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|uppercase&nbsp;&nbsp;&nbsp;&nbsp;|f_check_uppercase(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|大写英文字母&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|letter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_letter(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|英文字母&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|ZhOrNumOrLett&nbsp;&nbsp;&nbsp;|f_check_ZhOrNumOrLett(obj)&nbsp;&nbsp;&nbsp;&nbsp;|汉字、字母、数字组成的字符串&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|IP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_IP(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|计算机的IP地址&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|port&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_port(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|计算机的IP地址的端口号&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|URL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_URL(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|网页地址&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|email&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_email(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|电子邮件地址&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|mobile&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_mobile(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|移动电话号码&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|phone&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_phone(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|电话号码&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|zipcode&nbsp;&nbsp;&nbsp;&nbsp;|f_check_zipcode(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|邮政编码&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|userID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_userID(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|用户ID，可以为数字、字母、下划线的组合，第一个字符不能为数字,&nbsp;|<br />
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|且总长度不能超过20。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|IDno&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|f_check_IDno(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|身份证&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|formatStr(reg)&nbsp;&nbsp;&nbsp;|f_check_formatStr(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|符合某正则表达式的字符串。指定的字符串中不要包含"//",也不需要引号.&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|date(yyyyMMdd)&nbsp;&nbsp;&nbsp;|f_check_date(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|指定格式的日期数据，目前支持yyyy年MM月dd日,yyyy-MM-dd,&nbsp;&nbsp;|<br />
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|yyyy/MM/dd,yyyyMMdd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|time(yyyyMMddHHmmss)&nbsp;|f_check_time(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|指定格式的时间数据，目前支持yyyy年MM月dd日HH时mm分ss秒，&nbsp;&nbsp;|<br />
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|yyyy-MM-dd HH:mm:ss,yyyy/MM/dd HH:mm:ss，yyyyMMddHHmmss&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|double(len,prc)&nbsp;&nbsp;|f_check_double(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|带长度和精度的数字&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|interval(min,max)&nbsp;&nbsp;|f_check_interval(obj)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|在某区间内的数字，"-"代表负无穷，"+"代表正无穷。&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+<br />
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|checkIntervalObjs(obj1 , obj2)&nbsp;&nbsp;&nbsp;|校验2个表单域中的值是否满足obj1小于obj2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br />
+-----------------------+---------------------------------------+-------------------------------------------------------+</p>
<p>*/</p>
<p>/**<br />
* 取得字符串的字节长度 <br />
*/<br />
function strlen(str)<br />
{<br />
&nbsp;var i;<br />
&nbsp;var len;<br />
&nbsp;<br />
&nbsp;len = 0;<br />
&nbsp;for (i=0;i&lt;str.length;i++)<br />
&nbsp;{<br />
&nbsp;&nbsp;if (str.charCodeAt(i)&gt;255) len+=2; else len++;<br />
&nbsp;}<br />
&nbsp;return len;<br />
}</p>
<p>/*<br />
* 判断是否为数字，是则返回true,否则返回false<br />
*/<br />
function f_check_number(obj)<br />
{&nbsp;&nbsp; &nbsp;<br />
&nbsp;if (/^\d+$/.test(Math.abs(obj.value)))<br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} <br />
&nbsp;else <br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; f_alert(obj,"请输入数字");<br />
&nbsp;&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}</p>
<p>/*<br />
* 判断是否为正整数，是则返回true,否则返回false<br />
*/<br />
function f_check_naturalnumber(obj)<br />
{&nbsp;&nbsp; &nbsp;<br />
&nbsp;var s = obj.value;<br />
&nbsp;if (/^[0-9]+$/.test( s ) &amp;&amp; (s &gt; 0))<br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} <br />
&nbsp;else <br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"请输入正整数");<br />
&nbsp;&nbsp;&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}</p>
<p>/*<br />
* 判断是否为整数，是则返回true,否则返回false<br />
*/<br />
function f_check_integer(obj)<br />
{&nbsp;&nbsp; &nbsp;<br />
&nbsp;if (/^(\+|-)?\d+$/.test( obj.value )) <br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} <br />
&nbsp;else <br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"请输入整数");<br />
&nbsp;&nbsp;&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}</p>
<p>/*<br />
* 判断是否为实数，是则返回true,否则返回false<br />
*/<br />
function f_check_float(obj)<br />
{&nbsp;&nbsp; &nbsp;<br />
&nbsp;if (/^(\+|-)?\d+($|\.\d+$)/.test( obj.value )) <br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} <br />
&nbsp;else <br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"请输入实数");<br />
&nbsp;&nbsp;&nbsp; return false;<br />
&nbsp;}<br />
}</p>
<p>/*<br />
* 校验数字的长度和精度<br />
*/<br />
function f_check_double(obj){<br />
&nbsp;var numReg;<br />
&nbsp;var value = obj.value;<br />
&nbsp;if(Trim(value).length != 0){<br />
&nbsp;&nbsp;if(!f_check_float(obj)) return;<br />
&nbsp;}&nbsp;<br />
&nbsp;var strValueTemp, strInt, strDec;&nbsp;<br />
&nbsp;var dtype = obj.eos_datatype;<br />
&nbsp;var pos_dtype = dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")")).split(",");<br />
&nbsp;var len = pos_dtype[0], prec = pos_dtype[1];<br />
&nbsp;try<br />
&nbsp;{&nbsp;&nbsp;<br />
&nbsp;&nbsp;numReg =/[\-]/;<br />
&nbsp;&nbsp;strValueTemp = value.replace(numReg, "");<br />
&nbsp;&nbsp;numReg =/[\+]/;<br />
&nbsp;&nbsp;strValueTemp = strValueTemp.replace(numReg, "");<br />
&nbsp;&nbsp;//整数<br />
&nbsp;&nbsp;if(prec==0){<br />
&nbsp;&nbsp;&nbsp;numReg =/[\.]/;<br />
&nbsp;&nbsp;&nbsp;if(numReg.test(value) == true){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "输入必须为整数类型");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;&nbsp;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;if(strValueTemp.indexOf(".") &lt; 0 ){<br />
&nbsp;&nbsp;&nbsp;if(strValueTemp.length &gt;( len - prec)){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "整数位不能超过"+ (len - prec) +"位");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;}else{<br />
&nbsp;&nbsp;&nbsp;strInt = strValueTemp.substr( 0, strValueTemp.indexOf(".") );&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;if(strInt.length &gt;( len - prec)){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "整数位不能超过"+ (len - prec) +"位");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;strDec = strValueTemp.substr( (strValueTemp.indexOf(".")+1), strValueTemp.length );&nbsp;<br />
&nbsp;&nbsp;&nbsp;if(strDec.length &gt; prec){<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "小数位不能超过"+&nbsp; prec +"位");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;return true;<br />
&nbsp;}catch(e){<br />
&nbsp;&nbsp;alert("in f_check_double = " + e);<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}&nbsp;<br />
}</p>
<p>/*<br />
* 校验数字的最小最大值<br />
* 返回bool<br />
*/<br />
function f_check_interval(obj)<br />
{<br />
&nbsp;var value = parseFloat(obj.value);</p>
<p>&nbsp;var dtype = obj.eos_datatype;<br />
&nbsp;var pos_dtype = dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")")).split(",");<br />
&nbsp;<br />
&nbsp;var minLimit = pos_dtype[0];<br />
&nbsp;var maxLimit = pos_dtype[1];<br />
&nbsp;var minVal = parseFloat(pos_dtype[0]);<br />
&nbsp;var maxVal = parseFloat(pos_dtype[1]); <br />
&nbsp;<br />
&nbsp;if(isNaN(value))<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj, "值必须为数字");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if((isNaN(minVal) &amp;&amp; (minLimit != "-")) || (isNaN(maxVal) &amp;&amp; (maxLimit != "+")))<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj, "边界值必须为数字或-、+");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}</p>
<p>&nbsp;if(minLimit == "-" &amp;&amp; !isNaN(maxVal))<br />
&nbsp;{<br />
&nbsp;&nbsp;if(value &gt; maxVal)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;f_alert(obj, "值不能超过" + maxVal);<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;if(!isNaN(minVal) &amp;&amp; maxLimit == "+")<br />
&nbsp;{&nbsp;&nbsp;<br />
&nbsp;&nbsp;if(value &lt; minVal)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;f_alert(obj, "值不能小于" + minVal);<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;if(!isNaN(minVal) &amp;&amp; !isNaN(maxVal))<br />
&nbsp;{<br />
&nbsp;&nbsp;if(minVal &gt; maxVal)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;f_alert(obj, "起始值" + minVal + "不能大于终止值" + maxVal);<br />
&nbsp;&nbsp;}else<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;if(!(value &lt;= maxVal &amp;&amp; value &gt;= minVal))<br />
&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;f_alert(obj, "值应该在" + minVal + "和" + maxVal + "之间");<br />
&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/*<br />
用途：检查输入字符串是否只由汉字组成<br />
如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function f_check_zh(obj){<br />
&nbsp;if (/^[\u4e00-\u9fa5]+$/.test(obj.value)) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}<br />
&nbsp;f_alert(obj,"请输入汉字");<br />
&nbsp;return false;<br />
}</p>
<p>/*<br />
* 判断是否为小写英文字母，是则返回true,否则返回false<br />
*/<br />
function f_check_lowercase(obj)<br />
{&nbsp;&nbsp; &nbsp;<br />
&nbsp;if (/^[a-z]+$/.test( obj.value )) <br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} <br />
&nbsp;f_alert(obj,"请输入小写英文字母");<br />
&nbsp;&nbsp;&nbsp; return false;<br />
}</p>
<p>/*<br />
* 判断是否为大写英文字母，是则返回true,否则返回false<br />
*/<br />
function f_check_uppercase(obj)<br />
{&nbsp;&nbsp; &nbsp;<br />
&nbsp;if (/^[A-Z]+$/.test( obj.value )) <br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} <br />
&nbsp;f_alert(obj,"请输入大写英文字母");<br />
&nbsp;return false;<br />
}</p>
<p>/*<br />
* 判断是否为英文字母，是则返回true,否则返回false<br />
*/<br />
function f_check_letter(obj)<br />
{&nbsp;&nbsp; &nbsp;<br />
&nbsp;if (/^[A-Za-z]+$/.test( obj.value )) <br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp; return true;<br />
&nbsp;} <br />
&nbsp;f_alert(obj,"请输入英文字母");<br />
&nbsp;return false;<br />
}</p>
<p>/*<br />
用途：检查输入字符串是否只由汉字、字母、数字组成<br />
输入：<br />
&nbsp;value：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function f_check_ZhOrNumOrLett(obj){&nbsp;&nbsp;&nbsp; //判断是否是汉字、字母、数字组成<br />
&nbsp;var regu = "^[0-9a-zA-Z\u4e00-\u9fa5]+$";&nbsp;&nbsp; <br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test( obj.value )) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}<br />
&nbsp;f_alert(obj,"请输入汉字、字母或数字");<br />
&nbsp;return false;<br />
}</p>
<p>/*<br />
用途：校验ip地址的格式<br />
输入：strIP：ip地址<br />
返回：如果通过验证返回true,否则返回false；&nbsp;<br />
*/<br />
function f_check_IP(obj) <br />
{ <br />
&nbsp;&nbsp;&nbsp; var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/; //匹配IP地址的正则表达式<br />
&nbsp;if(re.test( obj.value ))<br />
&nbsp;{<br />
&nbsp;&nbsp;if( RegExp.$1 &lt;256 &amp;&amp; RegExp.$2&lt;256 &amp;&amp; RegExp.$3&lt;256 &amp;&amp; RegExp.$4&lt;256) return true;<br />
&nbsp;}<br />
&nbsp;f_alert(obj,"请输入合法的计算机IP地址");<br />
&nbsp;return false; <br />
}</p>
<p>/*<br />
用途：检查输入对象的值是否符合端口号格式<br />
输入：str 输入的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function f_check_port(obj)<br />
{<br />
&nbsp;if(!f_check_number(obj))<br />
&nbsp;&nbsp;return false;<br />
&nbsp;if(obj.value &lt; 65536)<br />
&nbsp;&nbsp;return true;<br />
&nbsp;f_alert(obj,"请输入合法的计算机IP地址端口号");<br />
&nbsp;return false; <br />
}</p>
<p>/*<br />
用途：检查输入对象的值是否符合网址格式<br />
输入：str 输入的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function f_check_URL(obj){&nbsp; <br />
&nbsp;var myReg = /^((http:[/][/])?\w+([.]\w+|[/]\w*)*)?$/; <br />
&nbsp;if(myReg.test( obj.value )) return true; <br />
&nbsp;f_alert(obj,"请输入合法的网页地址");<br />
&nbsp;return false; <br />
}</p>
<p>/*<br />
用途：检查输入对象的值是否符合E-Mail格式<br />
输入：str 输入的字符串<br />
返回：如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function f_check_email(obj){&nbsp; <br />
&nbsp;var myReg = /^([-_A-Za-z0-9\.]+)@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/; <br />
&nbsp;if(myReg.test( obj.value )) return true; <br />
&nbsp;f_alert(obj,"请输入合法的电子邮件地址");<br />
&nbsp;return false; <br />
}</p>
<p>/*<br />
要求：一、移动电话号码为11或12位，如果为12位,那么第一位为0<br />
&nbsp; 二、11位移动电话号码的第一位和第二位为"13"<br />
&nbsp; 三、12位移动电话号码的第二位和第三位为"13"<br />
用途：检查输入手机号码是否正确<br />
输入：<br />
&nbsp;s：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function f_check_mobile(obj){&nbsp;&nbsp; <br />
&nbsp;var regu =/(^[1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/;<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test( obj.value )) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}<br />
&nbsp;f_alert(obj,"请输入正确的手机号码");<br />
&nbsp;return false;&nbsp;<br />
}</p>
<p>/*<br />
要求：一、电话号码由数字、"("、")"和"-"构成<br />
&nbsp; 二、电话号码为3到8位<br />
&nbsp; 三、如果电话号码中包含有区号，那么区号为三位或四位<br />
&nbsp; 四、区号用"("、")"或"-"和其他部分隔开<br />
用途：检查输入的电话号码格式是否正确<br />
输入：<br />
&nbsp;strPhone：字符串<br />
返回：<br />
&nbsp;如果通过验证返回true,否则返回false&nbsp;<br />
*/<br />
function f_check_phone(obj) <br />
{<br />
&nbsp;var regu =/(^([0][1-9]{2,3}[-])?\d{3,8}(-\d{1,6})?$)|(^\([0][1-9]{2,3}\)\d{3,8}(\(\d{1,6}\))?$)|(^\d{3,8}$)/; <br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if (re.test( obj.value )) {<br />
&nbsp;&nbsp; return true;<br />
&nbsp;}<br />
&nbsp;f_alert(obj,"请输入正确的电话号码");<br />
&nbsp;return false;<br />
}</p>
<p>/* 判断是否为邮政编码 */<br />
function f_check_zipcode(obj)<br />
{<br />
&nbsp;if(!f_check_number(obj))<br />
&nbsp;&nbsp;return false;<br />
&nbsp;if(obj.value.length!=6)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"邮政编码长度必须是6位");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/*<br />
用户ID，可以为数字、字母、下划线的组合，<br />
第一个字符不能为数字,且总长度不能超过20。<br />
*/<br />
function f_check_userID(obj)<br />
{<br />
&nbsp;var userID = obj.value;<br />
&nbsp;if(userID.length &gt; 20)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"ID长度不能大于20");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}</p>
<p>&nbsp;if(!isNaN(userID.charAt(0)))<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"ID第一个字符不能为数字");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if(!/^\w{1,20}$/.test(userID)) <br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"ID只能由数字、字母、下划线组合而成");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/*<br />
功能：验证身份证号码是否有效<br />
提示信息：未输入或输入身份证号不正确！<br />
使用：f_check_IDno(obj)<br />
返回：bool<br />
*/<br />
function f_check_IDno(obj)<br />
{ <br />
&nbsp;var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"};<br />
&nbsp;<br />
&nbsp;var iSum = 0;<br />
&nbsp;var info = "";<br />
&nbsp;var strIDno = obj.value;<br />
&nbsp;var idCardLength = strIDno.length;&nbsp; <br />
&nbsp;if(!/^\d{17}(\d|x)$/i.test(strIDno)&amp;&amp;!/^\d{15}$/i.test(strIDno)) <br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"非法身份证号");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;//在后面的运算中x相当于数字10,所以转换成a<br />
&nbsp;strIDno = strIDno.replace(/x$/i,"a");</p>
<p>&nbsp;if(aCity[parseInt(strIDno.substr(0,2))]==null)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"非法地区");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;if (idCardLength==18)<br />
&nbsp;{<br />
&nbsp;&nbsp;sBirthday=strIDno.substr(6,4)+"-"+Number(strIDno.substr(10,2))+"-"+Number(strIDno.substr(12,2));<br />
&nbsp;&nbsp;var d = new Date(sBirthday.replace(/-/g,"/"))<br />
&nbsp;&nbsp;if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))<br />
&nbsp;&nbsp;{&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;f_alert(obj,"非法生日");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}</p>
<p>&nbsp;&nbsp;for(var i = 17;i&gt;=0;i --)<br />
&nbsp;&nbsp;&nbsp;iSum += (Math.pow(2,i) % 11) * parseInt(strIDno.charAt(17 - i),11);</p>
<p>&nbsp;&nbsp;if(iSum%11!=1)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;f_alert(obj,"非法身份证号");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;else if (idCardLength==15)<br />
&nbsp;{<br />
&nbsp;&nbsp;sBirthday = "19" + strIDno.substr(6,2) + "-" + Number(strIDno.substr(8,2)) + "-" + Number(strIDno.substr(10,2));<br />
&nbsp;&nbsp;var d = new Date(sBirthday.replace(/-/g,"/"))<br />
&nbsp;&nbsp;var dd = d.getFullYear().toString() + "-" + (d.getMonth()+1) + "-" + d.getDate();&nbsp;&nbsp; <br />
&nbsp;&nbsp;if(sBirthday != dd)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;f_alert(obj,"非法生日");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;return true; <br />
}</p>
<p>/*<br />
* 判断字符串是否符合指定的正则表达式<br />
*/<br />
function f_check_formatStr(obj)<br />
{<br />
&nbsp;var str = obj.value;<br />
&nbsp;var dtype = obj.eos_datatype;<br />
&nbsp;var regu = dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));&nbsp;//指定的正则表达式<br />
&nbsp;var re = new RegExp(regu);<br />
&nbsp;if(re.test(str))<br />
&nbsp;&nbsp;return true;<br />
&nbsp;f_alert(obj , "不符合指定的正则表达式要求");<br />
&nbsp;return false;&nbsp;<br />
}</p>
<p>/*<br />
功能：判断是否为日期(格式:yyyy年MM月dd日,yyyy-MM-dd,yyyy/MM/dd,yyyyMMdd)<br />
提示信息：未输入或输入的日期格式错误！<br />
使用：f_check_date(obj)<br />
返回：bool<br />
*/<br />
function f_check_date(obj)<br />
{<br />
&nbsp;var date = Trim(obj.value);<br />
&nbsp;if(date.length==0) return true;<br />
&nbsp;var dtype = obj.eos_datatype;<br />
&nbsp;if(dtype.indexOf("(")==-1) {f_alert(obj, "请指定日期格式"); return false; }<br />
&nbsp;var format = dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));&nbsp;//日期格式<br />
&nbsp;var year,month,day,datePat,matchArray;<br />
&nbsp;<br />
&nbsp;if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2})$/.test(format))<br />
&nbsp;&nbsp;datePat = /^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/;<br />
&nbsp;else if(/^(y{4})(年)(M{1,2})(月)(d{1,2})(日)$/.test(format))<br />
&nbsp;&nbsp;datePat = /^(\d{4})年(\d{1,2})月(\d{1,2})日$/;<br />
&nbsp;else if(format=="yyyyMMdd")<br />
&nbsp;&nbsp;datePat = /^(\d{4})(\d{2})(\d{2})$/;<br />
&nbsp;else<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"日期格式不对");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;matchArray = date.match(datePat);<br />
&nbsp;if(matchArray == null) <br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"日期长度不对,或日期中有非数字符号");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2})$/.test(format))<br />
&nbsp;{<br />
&nbsp;&nbsp;year = matchArray[1];<br />
&nbsp;&nbsp;month = matchArray[3];<br />
&nbsp;&nbsp;day = matchArray[4];<br />
&nbsp;} else<br />
&nbsp;{<br />
&nbsp;&nbsp;year = matchArray[1];<br />
&nbsp;&nbsp;month = matchArray[2];<br />
&nbsp;&nbsp;day = matchArray[3];<br />
&nbsp;}<br />
&nbsp;if (month &lt; 1 || month &gt; 12)<br />
&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;f_alert(obj,"月份应该为1到12的整数");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if (day &lt; 1 || day &gt; 31)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"每个月的天数应该为1到31的整数");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;if ((month==4 || month==6 || month==9 || month==11) &amp;&amp; day==31)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"该月不存在31号");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;if (month==2)<br />
&nbsp;{<br />
&nbsp;&nbsp;var isleap=(year % 4==0 &amp;&amp; (year % 100 !=0 || year % 400==0));<br />
&nbsp;&nbsp;if (day&gt;29)<br />
&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;f_alert(obj,"2月最多有29天");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;if ((day==29) &amp;&amp; (!isleap))<br />
&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;f_alert(obj,"闰年2月才有29天");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/*<br />
功能：校验的格式为yyyy年MM月dd日HH时mm分ss秒,yyyy-MM-dd HH:mm:ss,yyyy/MM/dd HH:mm:ss,yyyyMMddHHmmss<br />
提示信息：未输入或输入的时间格式错误<br />
使用：f_check_time(obj)<br />
返回：bool<br />
*/<br />
function f_check_time(obj)<br />
{<br />
&nbsp;var time = Trim(obj.value);<br />
&nbsp;if(time.length==0) return true;<br />
&nbsp;var dtype = obj.eos_datatype;<br />
&nbsp;if(dtype.indexOf("(")==-1) {f_alert(obj,"请指定时间格式"); return false; }<br />
&nbsp;var format = dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));&nbsp;//日期格式<br />
&nbsp;var datePat,matchArray,year,month,day,hour,minute,second;</p>
<p>&nbsp;if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2}) (HH:mm:ss)$/.test(format))<br />
&nbsp;&nbsp;datePat = /^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;<br />
&nbsp;else if(/^(y{4})(年)(M{1,2})(月)(d{1,2})(日)(HH时mm分ss秒)$/.test(format))<br />
&nbsp;&nbsp;datePat = /^(\d{4})年(\d{1,2})月(\d{1,2})日(\d{1,2})时(\d{1,2})分(\d{1,2})秒$/;<br />
&nbsp;else if(format == "yyyyMMddHHmmss")<br />
&nbsp;&nbsp;datePat = /^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/;<br />
&nbsp;else<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"日期格式不对");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;matchArray = time.match(datePat);<br />
&nbsp;if(matchArray == null) <br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"日期长度不对,或日期中有非数字符号");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2}) (HH:mm:ss)$/.test(format))<br />
&nbsp;{<br />
&nbsp;&nbsp;year = matchArray[1];<br />
&nbsp;&nbsp;month = matchArray[3];<br />
&nbsp;&nbsp;day = matchArray[4];<br />
&nbsp;&nbsp;hour = matchArray[5];<br />
&nbsp;&nbsp;minute = matchArray[6];<br />
&nbsp;&nbsp;second = matchArray[7];<br />
&nbsp;} else<br />
&nbsp;{<br />
&nbsp;&nbsp;year = matchArray[1];<br />
&nbsp;&nbsp;month = matchArray[2];<br />
&nbsp;&nbsp;day = matchArray[3];<br />
&nbsp;&nbsp;hour = matchArray[4];<br />
&nbsp;&nbsp;minute = matchArray[5];<br />
&nbsp;&nbsp;second = matchArray[6];<br />
&nbsp;}<br />
&nbsp;if (month &lt; 1 || month &gt; 12)<br />
&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;f_alert(obj,"月份应该为1到12的整数");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if (day &lt; 1 || day &gt; 31)<br />
&nbsp;{&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;f_alert(obj,"每个月的天数应该为1到31的整数");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;if ((month==4 || month==6 || month==9 || month==11) &amp;&amp; day==31)<br />
&nbsp;{&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;f_alert(obj,"该月不存在31号");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;if (month==2)<br />
&nbsp;{<br />
&nbsp;&nbsp;var isleap=(year % 4==0 &amp;&amp; (year % 100 !=0 || year % 400==0));<br />
&nbsp;&nbsp;if (day&gt;29)<br />
&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;f_alert(obj,"2月最多有29天");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;if ((day==29) &amp;&amp; (!isleap))<br />
&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;f_alert(obj,"闰年2月才有29天");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;if(hour&lt;0 || hour&gt;23)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"小时应该是0到23的整数");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if(minute&lt;0 || minute&gt;59)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"分应该是0到59的整数");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if(second&lt;0 || second&gt;59)<br />
&nbsp;{<br />
&nbsp;&nbsp;f_alert(obj,"秒应该是0到59的整数");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;&nbsp;&nbsp; return true;<br />
}<br />
/*判断当前对象是否可见*/<br />
function isVisible(obj){<br />
&nbsp;var visAtt,disAtt;<br />
&nbsp;try{<br />
&nbsp;&nbsp;disAtt=obj.style.display;<br />
&nbsp;&nbsp;visAtt=obj.style.visibility;<br />
&nbsp;}catch(e){}<br />
&nbsp;if(disAtt=="none" || visAtt=="hidden")<br />
&nbsp;&nbsp;return false;<br />
&nbsp;return true;<br />
}<br />
/*判断当前对象及其父对象是否可见*/<br />
function checkPrVis(obj){<br />
&nbsp;var pr=obj.parentNode;<br />
&nbsp;do{<br />
&nbsp;&nbsp;if(pr == undefined || pr == "undefined") return true;<br />
&nbsp;&nbsp;else{<br />
&nbsp;&nbsp;&nbsp;if(!isVisible(pr)) return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}while(pr=pr.parentNode);<br />
&nbsp;return true;<br />
}<br />
/* 弹出警告对话框，用户点确定后将光标置于出错文本框上， 并且将原来输入内容选中。*/<br />
function f_alert(obj,alertInfo)<br />
{<br />
&nbsp;var caption = obj.getAttribute("eos_displayname");<br />
&nbsp;var type = obj.getAttribute("type");<br />
&nbsp;if(caption == null) <br />
&nbsp;&nbsp;caption = "";<br />
&nbsp;alert(caption + "：" + alertInfo + "！");<br />
&nbsp;if(type != null){<br />
&nbsp;&nbsp;if(type == "text" || type == "TEXT" || type == "textarea" || type == "TEXTAREA")<br />
&nbsp;&nbsp;&nbsp;obj.select();<br />
&nbsp;}<br />
&nbsp;if(isVisible(obj) &amp;&amp; checkPrVis(obj))<br />
&nbsp;&nbsp;obj.focus();<br />
}</p>
<p>/**<br />
* 检测字符串是否为空 <br />
*/<br />
function isnull(str)<br />
{<br />
&nbsp;&nbsp;&nbsp; var i;<br />
&nbsp;&nbsp;&nbsp; if(str.length == 0)<br />
&nbsp;&nbsp;return true;<br />
&nbsp;&nbsp;&nbsp; for (i=0;i&lt;str.length;i++)<br />
&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (str.charAt(i)!=' ') <br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; return true;<br />
}</p>
<p>/**<br />
* 检测指定文本框输入是否合法。<br />
* 如果用户输入的内容有错，则弹出提示对话框，<br />
* 同时将焦点置于该文本框上，并且该文本框前面<br />
* 会出现一个警告图标(输入正确后会自动去掉)。<br />
*/<br />
function checkInput(object)<br />
{<br />
&nbsp;var image;<br />
&nbsp;var i;<br />
&nbsp;var length;</p>
<p>&nbsp;if(object.eos_maxsize + "" != "undefined") length = object.eos_maxsize;<br />
&nbsp;else length = 0;</p>
<p>&nbsp;if ( isnull(object.value))&nbsp;return true;</p>
<p>&nbsp;/* 长度校验 */<br />
&nbsp;if(length != 0 &amp;&amp; strlen(object.value) &gt; parseInt(length)) {<br />
&nbsp;&nbsp;&nbsp;f_alert(object, "超出最大长度" + length);<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;} <br />
&nbsp;/* 数据类型校验 */<br />
&nbsp;else {<br />
&nbsp;&nbsp;if (object.eos_datatype + "" != "undefined")<br />
&nbsp;&nbsp;{&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;var dtype = object.eos_datatype;<br />
&nbsp;&nbsp;&nbsp;var objName = object.name;<br />
&nbsp;&nbsp;&nbsp;//如果类型名后面带有括号，则视括号前面的字符串为校验类型<br />
&nbsp;&nbsp;&nbsp;if(dtype.indexOf("(") != -1)<br />
&nbsp;&nbsp;&nbsp;&nbsp;dtype = dtype.substring(0,dtype.indexOf("("));<br />
&nbsp;&nbsp;&nbsp;//根据页面元素的校验类型进行校验<br />
&nbsp;&nbsp;&nbsp;try{<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(eval("f_check_" + dtype + "(object)") != true)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;&nbsp;}catch(e){return true;}<br />
&nbsp;&nbsp;&nbsp;/*&nbsp;如果form中存在name前半部分相同，并且同时存在以"min"和"max"结尾的表单域，<br />
&nbsp;&nbsp;&nbsp;&nbsp;那么视为按区间查询。即"min"结尾的表单域的值要小于等于"max"结尾的表单域的值。&nbsp;*/<br />
&nbsp;&nbsp;&nbsp;if(objName.substring((objName.length-3),objName.length)=="min")<br />
&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;var objMaxName = objName.substring(0, (objName.length-3)) + "max";<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(document.getElementById(objMaxName) != undefined &amp;&amp; document.getElementById(objMaxName) != "undefined" )<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(checkIntervalObjs(object, document.getElementById(objMaxName)) != true)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/* 检测表单中所有输入项的正确性，一般用于表单的onsubmit事件 */<br />
function checkForm(myform)<br />
{<br />
&nbsp;var i;<br />
&nbsp;for (i=0;i&lt;myform.elements.length;i++)<br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp; /* 非自定义属性的元素不予理睬 */&nbsp;&nbsp;<br />
&nbsp;&nbsp;if (myform.elements[i].eos_displayname + "" == "undefined") continue;<br />
&nbsp;&nbsp;/* 非空校验 */<br />
&nbsp;&nbsp;if (myform.elements[i].eos_isnull=="false" &amp;&amp; isnull(myform.elements[i].value)){<br />
&nbsp;&nbsp;&nbsp;f_alert(myform.elements[i],"不能为空");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;/* 数据类型校验 */<br />
&nbsp;&nbsp;if (checkInput(myform.elements[i])==false)<br />
&nbsp;&nbsp;&nbsp;return false;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}</p>
<p>/**<br />
* 校验两个表单域数据的大小，目前只允许比较日期和数字。<br />
* @param obj1 小值表单域<br />
* @param obj2 大值表单域<br />
*/<br />
function checkIntervalObjs(obj1 , obj2)<br />
{&nbsp;<br />
&nbsp;var caption1 = obj1.eos_displayname;<br />
&nbsp;var caption2 = obj2.eos_displayname;<br />
&nbsp;var val1 = parseFloat(obj1.value);<br />
&nbsp;var val2 = parseFloat(obj2.value);<br />
&nbsp;var dtype1 = obj1.eos_datatype;<br />
&nbsp;var dtype2 = obj2.eos_datatype;<br />
&nbsp;<br />
&nbsp;// 非自定义属性的元素不予理睬<br />
&nbsp;if (obj1.eos_displayname + "" == "undefined" || obj2.eos_displayname + "" == "undefined") {<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;// 日期类型的比较<br />
&nbsp;if((dtype1.indexOf("date")!=-1 &amp;&amp; dtype2.indexOf("date")!=-1) ||<br />
&nbsp;&nbsp;(dtype1.indexOf("time")!=-1 &amp;&amp; dtype2.indexOf("time")!=-1)){<br />
&nbsp;&nbsp;if(Trim(obj1.value.length)==0 || Trim(obj2.value.length)==0) return true;<br />
&nbsp;&nbsp;var format1 = dtype1.substring(dtype1.indexOf("(")+1,dtype1.indexOf(")"));&nbsp;//日期时间格式<br />
&nbsp;&nbsp;var format2 = dtype2.substring(dtype2.indexOf("(")+1,dtype2.indexOf(")"));&nbsp;//日期时间格式<br />
&nbsp;&nbsp;val1 = getDateByFormat(obj1.value, format1);<br />
&nbsp;&nbsp;val2 = getDateByFormat(obj2.value, format2);<br />
&nbsp;&nbsp;if(val1 &gt; val2){<br />
&nbsp;&nbsp;&nbsp;obj2.select();<br />
&nbsp;&nbsp;&nbsp;if(isVisible(obj2) &amp;&amp; checkPrVis(obj2))&nbsp;obj2.focus();<br />
&nbsp;&nbsp;&nbsp;alert(caption1 + "的起始日期不能大于其终止日期！");<br />
&nbsp;&nbsp;&nbsp;return false;<br />
&nbsp;&nbsp;}<br />
&nbsp;}&nbsp;<br />
&nbsp;// 数字类型的比较<br />
&nbsp;if((isNaN(val1) &amp;&amp; !isnull(val1)) || (isNaN(val2) &amp;&amp; !isnull(val2))){<br />
&nbsp;&nbsp;alert(caption1 + "的值不全为数字则不能比较！");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;if(val1 &gt; val2){<br />
&nbsp;&nbsp;obj2.select();<br />
&nbsp;&nbsp;if(isVisible(obj2) &amp;&amp; checkPrVis(obj2))<br />
&nbsp;&nbsp;&nbsp;obj2.focus();<br />
&nbsp;&nbsp;alert(caption1 + "的起始值不能大于其终止值！");<br />
&nbsp;&nbsp;return false;<br />
&nbsp;}<br />
&nbsp;return true;<br />
}<br />
//校验表单并提交<br />
function check(frm){<br />
&nbsp;if(checkForm(frm) == false) return;<br />
&nbsp;else frm.submit();&nbsp;&nbsp;&nbsp; &nbsp;<br />
}<br />
//表单数据重置<br />
function resetData(frm){<br />
&nbsp;frm.reset();<br />
}</p>
<p>/*根据日期格式，将字符串转换成Date对象。<br />
格式：yyyy-年，MM-月，dd-日，HH-时，mm-分，ss-秒。<br />
（格式必须写全，例如:yy-M-d，是不允许的，否则返回null；格式与实际数据不符也返回null。）<br />
默认格式：yyyy-MM-dd HH:mm:ss,yyyy-MM-dd。*/<br />
function getDateByFormat(str){<br />
&nbsp;var dateReg,format;<br />
&nbsp;var y,M,d,H,m,s,yi,Mi,di,Hi,mi,si;<br />
&nbsp;if((arguments[1] + "") == "undefined") format = "yyyy-MM-dd HH:mm:ss";<br />
&nbsp;else format = arguments[1];<br />
&nbsp;yi = format.indexOf("yyyy");<br />
&nbsp;Mi = format.indexOf("MM");<br />
&nbsp;di = format.indexOf("dd");<br />
&nbsp;Hi = format.indexOf("HH");<br />
&nbsp;mi = format.indexOf("mm");<br />
&nbsp;si = format.indexOf("ss");<br />
&nbsp;if(yi == -1 || Mi == -1 || di == -1) return null;<br />
&nbsp;else{<br />
&nbsp;&nbsp;y = parseInt(str.substring(yi, yi+4),10);<br />
&nbsp;&nbsp;M = parseInt(str.substring(Mi, Mi+2),10);<br />
&nbsp;&nbsp;d = parseInt(str.substring(di, di+2),10);<br />
&nbsp;}<br />
&nbsp;if(isNaN(y) || isNaN(M) || isNaN(d)) return null;<br />
&nbsp;if(Hi == -1 || mi == -1 || si == -1) return new Date(y, M-1, d);<br />
&nbsp;else{<br />
&nbsp;&nbsp;H = str.substring(Hi, Hi+4);<br />
&nbsp;&nbsp;m = str.substring(mi, mi+2);<br />
&nbsp;&nbsp;s = str.substring(si, si+2);<br />
&nbsp;}<br />
&nbsp;if(isNaN(parseInt(y)) || isNaN(parseInt(M)) || isNaN(parseInt(d))) return new Date(y, M-1, d);<br />
&nbsp;else return new Date(y, M-1, d,H, m, s);<br />
}</p>
<p>/*LTrim(string):去除左边的空格*/<br />
function LTrim(str){<br />
&nbsp;&nbsp;&nbsp; var whitespace = new String(" \t\n\r");<br />
&nbsp;&nbsp;&nbsp; var s = new String(str);&nbsp;&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp; if (whitespace.indexOf(s.charAt(0)) != -1){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var j=0, i = s.length;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while (j &lt; i &amp;&amp; whitespace.indexOf(s.charAt(j)) != -1){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; j++;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s = s.substring(j, i);<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; return s;<br />
}<br />
/*RTrim(string):去除右边的空格*/<br />
function RTrim(str){<br />
&nbsp;&nbsp;&nbsp; var whitespace = new String(" \t\n\r");<br />
&nbsp;&nbsp;&nbsp; var s = new String(str); <br />
&nbsp;&nbsp;&nbsp; if (whitespace.indexOf(s.charAt(s.length-1)) != -1){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var i = s.length - 1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while (i &gt;= 0 &amp;&amp; whitespace.indexOf(s.charAt(i)) != -1){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; i--;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s = s.substring(0, i+1);<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; return s;<br />
}<br />
/*Trim(string):去除字符串两边的空格*/<br />
function Trim(str){<br />
&nbsp;&nbsp;&nbsp; return RTrim(LTrim(str));<br />
}<br />
</p>
<img src ="http://www.blogjava.net/primeton/aggbug/145168.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/primeton/" target="_blank">primeton</a> 2007-09-14 16:16 <a href="http://www.blogjava.net/primeton/archive/2007/09/14/145168.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>EOS组织结构表关系</title><link>http://www.blogjava.net/primeton/archive/2007/09/03/142425.html</link><dc:creator>primeton</dc:creator><author>primeton</author><pubDate>Mon, 03 Sep 2007 12:48:00 GMT</pubDate><guid>http://www.blogjava.net/primeton/archive/2007/09/03/142425.html</guid><wfw:comment>http://www.blogjava.net/primeton/comments/142425.html</wfw:comment><comments>http://www.blogjava.net/primeton/archive/2007/09/03/142425.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/primeton/comments/commentRss/142425.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/primeton/services/trackbacks/142425.html</trackback:ping><description><![CDATA[<p>有兴趣学习普元开发软件的，可以了解一下。<a title="普元EOS的组织表关系" href="/Files/primeton/EOS-ORG.rar"><br />
&nbsp;</a><a title="EOS组织结构关系表" href="/Files/primeton/EOS-ORG.rar">EOS组织结构关系表</a></p>
使用工具：PowerDesigner<br />
开发工具：<a title="primeton" href="http://www.primeton.com/" target="_blank">Primeton </a>
<img src ="http://www.blogjava.net/primeton/aggbug/142425.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/primeton/" target="_blank">primeton</a> 2007-09-03 20:48 <a href="http://www.blogjava.net/primeton/archive/2007/09/03/142425.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>