<script language="JavaScript" type="text/javascript">
function $(obj){
return document.getElementById(obj);
}
function checkEmail()
{
var str = $("myText").value;
//如果爲空,則通過校驗
if(str == ""){
alert("輸入爲空");
return;
}
if (str.charAt(0) == "." || str.charAt(0) == "@" || str.indexOf('@', 0) == -1||
str.indexOf('.', 0) == -1 || str.lastIndexOf("@") == str.length-1 ||
str.lastIndexOf(".") == str.length-1)
alert("不是一個郵箱");
else
alert("是一個郵箱");
}
</script>
</head>
<body>
<input type="text" id="myText" />
<input type="button" οnclick="checkEmail()" value="驗證是否郵箱" />
這個驗證比上個完善的好多。但是要明白這些涵義
1.首先是charAt();
String str="lwx";
char ch1=str.charAt(0);
char ch2=str.charAt(1);
這時 ch1是l, ch2是w
String類就是一個字符數組,charAt(i)取第i個位置的字符(i從0開始)
2.indexOf() 如果找到該字符,則爲 value 的索引位置;否則如果未找到,則爲 -1
indexOf() 方法對大小寫敏感!
如果要檢索的字符串值沒有出現,則該方法返回 -1。
var str="Hello world!"
document.write(str.indexOf("Hello") + "<br />")
document.write(str.indexOf("World") + "<br />")
document.write(str.indexOf("world"))
</script>以上代碼的輸出:
0 -1 6
IndexOf(String, Int32) | 報告指定字符串在此實例中的第一個匹配項的從零開始的索引。該搜索從指定字符位置開始。 |
則返回-1
4.str.lastIndexOf("@")指的是'@'在str最後一次出現的位置,和indexOf()指的是第一次出現的
位置分別清楚就一目瞭然了。
5.str.lastIndexOf("@") == str.length-1 指@出現在最後一個字符中