※ ChatGPTを利用し、要約された質問です(原文:javascriptをはじめて勉強しているものです。)
JavaScriptフォーム入力の値をチェックする方法
このQ&Aのポイント
JavaScriptを使用して、フォームの入力値をチェックする方法について学びましょう。
この質問では、JavaScriptを使用してフォームがサブミットされた際に入力された値をチェックする方法について質問しています。
特に、正しいメールアドレス形式で入力されているかどうかを確認する方法について知りたいとしています。
javascriptをはじめて勉強しているものです。
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>