| 悄悄地愛上死亡 ![]() | 分成index.html的主網頁與.js的一些判斷 index.html如下: <hr> <html> <head> <title>email地址是否合法 index.html</title> <Script language = "JavaScript" src="mail.js"></script> <script language="JavaScript"> <!-- function mail_process(stringin) { var num=email_test(stringin); var str=""; if (num!=0) { switch (num) { case 1: str="首字符必須用字母!或不能為空白!請重填。"; break; case 2: str="忘了填寫郵件伺服器的位址了!請重填。"; break; case 3: str="您的帳號太短,不能少於三個字符!請重填。"; break; case 4: str="您的帳號太長,不能多於十九個字符!請重填。"; break; case 5: str="您使用了非法字符!請重填。"; break; case 6: str="您的郵件伺服器的位址不合法!請重填。"; break; default: str="您的email地址不合法!請重填。"; } alert(str); } else { alert("謝謝您!"); eval(window.close()); } } //--> </script> </head> <body> <form method="POST" onsubmit="mail_process(email_add.value)"> <p>請輸入您的E-mail地址: <input type="text" name="email_add" size="20" > <input type="submit" value="確定" name="B1"></p> </form> </body> </html> 2.//mail.js function char_test(chr) //字符檢測函數 { var i; var smallch="abcdefghijklmnopqrstuvwxyz"; var bigch="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; for(i=0;i<26;i++) if(chr==smallch.charAt(i) || chr==bigch.charAt(i)) return(1); return(0); } function spchar_test(chr) //數字和特殊字符檢測函數 { var i; var spch="_-.0123456789"; for (i=0;i<13;i++) if(chr==spch.charAt(i)) return(1); return(0); } function email_test(str) { var i,flag=0; var at_symbol=0; //“@”檢測的位置 var dot_symbol=0; //“.”檢測的位置 if(char_test(str.charAt(0))==0 ) return (1); //首字符必須用字母 for (i=1;i<str.length;i++) if(str.charAt(i)=='@') { at_symbol=i; break; } //檢測“@”的位置 if(at_symbol==str.length-1 || at_symbol==0) return(2); //沒有郵件服務器域名 if(at_symbol<3) return(3); //帳號少於三個字符 if(at_symbol>19 ) return(4); //帳號多於十九個字符 for(i=1;i<at_symbol;i++) if(char_test(str.charAt(i))==0 && spchar_test(str.charAt(i))==0) return (5); for(i=at_symbol+1;i<str.length;i++) if(char_test(str.charAt(i))==0 && spchar_test(str.charAt(i))==0) return (5); //不能用其它的特殊字符 for(i=at_symbol+1;i<str.length;i++) if(str.charAt(i)=='.') dot_symbol=i; for(i=at_symbol+1;i<str.length;i++) if(dot_symbol==0 || dot_symbol==str.length-1) //簡單的檢測有沒有“.”,以確定伺服器名稱是否合法 return (6); return (0); //郵件名合法 } |
| |
類似的主題 | ||||
| 主題 | 主題作者 | 討論版 | 回覆 | 最後發表 |
| [免費空間30MB]支援 ASP.NET + ASP + ACCESS資料庫 | mp593 | ☉ -- 虛 擬 主 機 討 論 版 | 0 | 2004-04-05 11:20 PM |
| XML | RSS 2.0 | RSS |
本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。