2function Trim(str){
3if(str.charAt(0) == " "){
4str = str.slice(1);
5str = Trim(str);
6}
7return str;
8}
9
10//判断是否是空
11function isEmpty(pObj,errMsg){
12var obj = eval(pObj);
13if( obj == null Trim(obj.value) == ""){
14if (errMsg == null errMsg =="")
15alert("输入为空!");
16else
17alert(errMsg);
18obj.focus();
19return false;
20}
21return true;
22}
23
24//判断是否是数字
25function isNumber(pObj,errMsg){
26var obj = eval(pObj);
27strRef = "1234567890";
28if(!isEmpty(pObj,errMsg))return false;
29for (i=0;i<obj.value.length;i++) {
30tempChar= obj.value.substring(i,i+1);
31if (strRef.indexOf(tempChar,0)==-1) {
32if (errMsg == null errMsg =="")
33alert("数据不符合要求,请检查");
34else
35alert(errMsg);
36if(obj.type=="text")
37obj.focus();
38return false;
39}
40}
41return true;
42}
43
44//判断是否是数字,数字可以为负数
45function isNegative(pObj,errMsg){
46var obj = eval(pObj);
47strRef = "1234567890-";
48if(!isEmpty(pObj,errMsg))return false;
49for (i=0;i<obj.value.length;i++) {
50tempChar= obj.value.substring(i,i+1);
51if (strRef.indexOf(tempChar,0)==-1) {
52if (errMsg == null errMsg =="")
53alert("数据不符合要求,请检查");
54else
55alert(errMsg);
56if(obj.type=="text")
57obj.focus();
58return false;
59}else{
60if(i>0){
61if(obj.value.substring(i,i+1)=="-"){
62if (errMsg == null errMsg =="")
63alert("数据不符合要求,请检查");
64else
65alert(errMsg);
66if(obj.type=="text")
67obj.focus();
68return false;
69}
70}
71}
72}
73return true;
74}
75
76//判断是否是钱的形式
77function isMoney(pObj,errMsg){
78var obj = eval(pObj);
79strRef = "1234567890.";
80if(!isEmpty(pObj,errMsg)) return false;
81for (i=0;i<obj.value.length;i++) {
82tempChar= obj.value.substring(i,i+1);
83if (strRef.indexOf(tempChar,0)==-1) {
84if (errMsg == null errMsg =="")
85alert("数据不符合要求,请检查");
86else
87alert(errMsg);
88if(obj.type=="text")
89obj.focus();
90return false;
91}else{
92tempLen=obj.value.indexOf(".");
93if(tempLen!=-1){
94strLen=obj.value.substring(tempLen+1,obj.value.length);
95if(strLen.length>2){
96if (errMsg == null errMsg =="")
97alert("数据不符合要求,请检查");
98else
99alert(errMsg);
100if(obj.type=="text")
101obj.focus();
102return false;
103}
104}
105}
106}
107return true;
108}
109
110//判断是否闰年
111function isLeapYear(year)
112{
113if((year%4==0&&year%100!=0)(year%400==0))
114{
115return true;
116}
117return false;
118}
119
120//判断时间是否正确
121function isDate(checktext){
122var datetime;
123var year,month,day;
124var gone,gtwo;
125if(Trim(checktext.value)!=""){
126datetime=Trim(checktext.value);
127if(datetime.length==10){
128year=datetime.substring(0,4);
129if(isNaN(year)==true){
130alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)!");
131checktext.focus();
132return false;
133}
134gone=datetime.substring(4,5);
135month=datetime.substring(5,7);
136if(isNaN(month)==true){
137alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)!");
138checktext.focus();
139return false;
140}
141gtwo=datetime.substring(7,8);
142day=datetime.substring(8,10);
143if(isNaN(day)==true){
144alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)!");
145checktext.focus();
146return false;
147}
148if((gone=="-")&&(gtwo=="-")){
149if(month<1month>12) {
150alert("月份必须在01和12之间!");
151checktext.focus();
152return false;
153}
154if(day<1day>31){
155alert("日期必须在01和31之间!");
156checktext.focus();
157return false;
158}else{
159if(month==2){
160if(isLeapYear(year)&&day>29){
161alert("二月份日期必须在01到29之间!");
162checktext.focus();
163return false;
164}
165if(!isLeapYear(year)&&day>28){
166alert("二月份日期必须在01到28之间!");
167checktext.focus();
168return false;
169}
170}
171if((month==4month==6month==9month==11)&&(day>30)){
172alert("在四,六,九,十一月份 \n日期必须在01到30之间!");
173checktext.focus();
174return false;
175}
176}
177}else{
178alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)");
179checktext.focus();
180return false;
181}
182}else{
183alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)");
184checktext.focus();
185return false;
186}
187}else{
188return true;
189}
190return true;
191}
192
测试代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<script language="JavaScript">
</script>
<script language="JavaScript">
function checked(theform){
if (!isEmpty(theform.aa,'请输入数据')) return false;
}
</script>
</head>
<body>
<form method="post" action="" name="dd" onSubmit="return checked(this);">
判断是否输入数据<input type="text" name="aa"><br>
判断数量<input type="text" name="bb" onChange="return isNumber(this,'');"><br>
判断数量,可以为负数<input type="text" name="dd" onChange="return isNegative(this,'');"><br>
判断金额<input type="text" name="cc" onChange="return isMoney(this,'');"><br>
判断时间<input type="text" name="ee" onChange="return isDate(this)"><br>
<input type="submit" value="submit">
</form>
</body>
</html>
2*JS全角转换为半角
3*/
4function DBC2SBC(str,flag) {
5var i;
6var result='';
7for(i=0;i<str.length;i++)
8{ str1=str.charCodeAt(i);
9if(str1<125&&!flag)
10result+=String.fromCharCode(str.charCodeAt(i));
11else
12result+=String.fromCharCode(str.charCodeAt(i)-65248);
13}
14return result;
15}
16//示例:
17alert(DBC2SBC("AAabc",0));
18document.write(DBC2SBC("1223",0))
19
<input type=text value="abcdefg" id=txt><input type=button value="变" onclick=txt.value=DBC2SBC(txt.value)>
*验证E-MAIL格式函数
*/
function isemail (s)
{
if (s.length>100){
window.alert("email地址长度不能超过100位!");
return false;
}
var regu="^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$"
var re=new RegExp(regu);
if (s.search(re)!=-1){
return true;
}else{
window.alert("请输入有效合法的E-mail地址!");
return false;
}
}
2 *验证身份证号码
3 */
4function checkIDCard (str){
5 //身份证正则表达式(15位)
6 isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
7 //身份证正则表达式(18位)
8 isIDCard2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;
9 //验证身份证,返回结果
10 return (isIDCard1.test(str)||isIDCard2.test(str));
11}
验证身份证号码的这个方法俺没测试过,不知道能用否,贴上了先!
◑▂◐ ◑ω◐ ◑^◐ 初来置业,从一钉一铆开始 ◑△◐ ◑﹏◐ ◑0◐