JavaScript フォームの検証
JavaScript を使用すると、データがサーバーに送信される前に、HTML フォーム内のこれらの入力データを検証できます。
フォーム データは、その正確性を検証するために JavaScript の使用を必要とすることがよくあります:
フォーム データが空かどうかを確認しますか?
入力したメールアドレスが正しいか確認してください?
日付が正しく入力されていることを確認しますか?
フォーム入力内容が数値かどうかを確認しますか?
必須(または必須)項目
次の関数は、ユーザーがフォームに必須(または必須)項目を入力したかどうかを確認するために使用されます。必須であるか、必須フィールドが空の場合、警告ボックスが表示され、関数の戻り値は false になります。それ以外の場合、関数の戻り値は true (データに問題がないことを意味します) になります。
function validateForm() { var x=document.forms["myForm"]["fname"].value; if (x==null || x=="") { alert("姓必须填写"); return false; } }上記の関数は、フォームが送信されると呼び出されます。呼び出し:
インスタンス
インスタンスの実行»オンラインインスタンスを表示するには、[インスタンスの実行]ボタンをクリックしてください
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <head> <script> function validateForm(){ var x=document.forms["myForm"]["fname"].value; if (x==null || x==""){ alert("姓必须填写"); return false; } } </script> </head> <body> <form name="myForm" action="demo-form.php" onsubmit="return validateForm()" method="post"> 姓: <input type="text" name="fname"> <input type="submit" value="提交"> </form> </body> </html>
インスタンスの実行»オンラインインスタンスを表示するには、[インスタンスの実行]ボタンをクリックしてください
次の関数は、入力されたデータがメールアドレスの文法の基本と一致するかどうかをチェックします。 これは、入力データには @ 記号とピリオド (.) が含まれている必要があることを意味します。同時に、@ を電子メール アドレスの最初の文字にすることはできず、@ の後に少なくとも 1 つのピリオドが必要です:
function validateForm(){ var x=document.forms["myForm"]["email"].value; var atpos=x.indexOf("@"); var dotpos=x.lastIndexOf("."); if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){ alert("不是一个有效的 e-mail 地址"); return false; } }以下は、HTML フォームを含む完全なコードです:
Example
実行例»「インスタンスの実行」ボタンをクリックしてオンラインインスタンスを表示します
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <head> <script> function validateForm(){ var x=document.forms["myForm"]["email"].value; var atpos=x.indexOf("@"); var dotpos=x.lastIndexOf("."); if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){ alert("不是一个有效的 e-mail 地址"); return false; } } </script> </head> <body> <form name="myForm" action="demo-form.php" onsubmit="return validateForm();" method="post"> Email: <input type="text" name="email"> <input type="submit" value="提交"> </form> </body> </html>
実行例»「インスタンスの実行」ボタンをクリックしてオンラインインスタンスを表示します