以下是我要寫的網頁:
http://home.kimo.com.tw/brandy_cage/phone.htm希望能改善 JavaScript 部分
<HTML>
<head><title>電話</title>
</head>
<BODY><center>
電話<br>
<form method="POST" action="xxx" name="phoform" onsubmit="return check();">
市內電話<input type="text" name="pho11" size="2" maxlength="2">—
<input type="text" name="pho12" size="7" maxlength="7"> <br>
行動電話:09<input type="text" name="pho21" size="2" maxlength="2">—
<input type="text" name="pho22" size="6" maxlength="6"><br>
<input type="submit" value="確定" name="B1">
<input type="reset" value="重新輸入" name="B2">
<input type="button" value="離開" name="B3" onclick="window.close()">
</form>
</BODY>
<script language="JavaScript">
<!-- -
function check()
{
if (document.phoform.pho11.value.length != 2)
{
alert("這裡應該輸入『2碼』");
phoform.elements[0].focus();
return(false);
}
if (window.RegExp)
{
var reg = new RegExp("^([0-9])*$","g");
if (!reg.test(phoform.elements[0].value))
{
alert("電話號碼為數字");
phoform.elements[0].focus();
return(false);
}
}
if (document.phoform.pho12.value.length != 7)
{
alert("這裡應該輸入『7碼』");
phoform.elements[1].focus();
return(false);
}
if (window.RegExp)
{
var reg = new RegExp("^([0-9])*$","g");
if (!reg.test(phoform.elements[1].value))
{
alert("電話號碼為數字");
phoform.elements[1].focus();
return(false);
}
}
if (document.phoform.pho21.value.length != 2)
{
alert("這裡應該輸入『2碼』");
phoform.elements[2].focus();
return(false);
}
if (window.RegExp)
{
var reg = new RegExp("^([0-9])*$","g");
if (!reg.test(phoform.elements[2].value))
{
alert("電話號碼為數字");
phoform.elements[2].focus();
return(false);
}
}
if (document.phoform.pho22.value.length != 6)
{
alert("這裡應該輸入『6碼』");
phoform.elements[3].focus();
return(false);
}
if (window.RegExp)
{
var reg = new RegExp("^([0-9])*$","g");
if (!reg.test(phoform.elements[3].value))
{
alert("電話號碼為數字");
phoform.elements[3].focus();
return(false);
}
}
}
//--->
</script>
</html>
尚需改善:
1. 輸入區碼 2 碼後,游標自動更換到—市內電話的 7 碼部分,依序是 : → 行動電話 的 2 碼 → 行動電話 的 6 碼
2. 當檢驗表單 → 發現錯誤 → 自動指向錯誤欄位時,將此方塊 value 值全選
書上沒說到 教學網站也沒發現到... 請前輩們指點ㄅ