dポイントプレゼントキャンペーン実施中!

javascriptをはじめて勉強しているものです。

すみません。
以下のソースで、フォームがサブミットされたら、
inputの中身の値をチェックするものです。

chkValue()実行時、
emailアドレスの入力形式をチェックする関数をいれていますが、
こちらが、意図した動作をしません。(GETされてしまう)

原因教えていただきたいです。
お手数をお掛けしますが、どうぞよろしくお願いいたします。


<html>
<head>
<script type ="text/javascript">
<!--
function chkNum(T){
if(T.value.match(/[^0-9]/g)){
T.value="";
alert("数値以外は入力できません。");
}
}
function chkValue(){
if(document.myform.tboxInt.value.match(/[0-9]{4}/)){
document.myform.tboxInt.style.backgroundColor="#000";
}else{
alert("4桁の数字でないといけません。");
document.myform.tboxInt.style.backgroundColor="#f99";
document.myform.tboxInt.focus();
return false;
}
if(document.myform.tboxemail.value.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/)){
alert("ok");
}else{
document.myform.tboxEmail.value="";
alert("正しいメールアドレス形式で入力してください。");
document.myform.tboxemail.style.backgroundColor="#f99";
document.myform.tboxemail.focus();
return false;
}
alert(document.myform.tboxemail.value);
alert("ok2")
return true;
}

//-->
</script>
</head>

<body>

<form name="myform" onSubmit="return chkValue()">
<table border="1">
<tr>
<td>数値フィールド</td>
<td><input type="text" name="tboxInt" onkeyup="chkNum(this)"></td>
</tr>
<tr>
<td>メールアドレス</td>
<td><input type="text" name="tboxemail"></td>
</tr>
</table>

<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>


<input type="submit" value="確認">
</form>

</body>

</html>

A 回答 (1件)

とりあえず、単純な間違いを。

(tboxEmail→tboxemailに訂正)
document.myform.tboxEmail.value="";

document.myform.tboxemail.value="";
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!