0

誰かがメールを入力したかどうかを確認する JavaScript 関数があります。

function formValidate(){

    form1 = document.forms['_register1'];

    if (form1.elements['email'].value == 'Type Your Email Address Here') 

    {

        alert('Please enter your email address.');

        form1.elements['email'].focus();

        return false;

    }
}

フォームのhtmlは次のとおりです。

<form method="post" enctype="multipart/form-data" name="_register1" id="_register" action="signup.php" >
<input type="text" class="field" value="Type Your Email Address Here" name="email" title="Type Your Email Address Here" />
<input type="submit" class="button button-signup" value="SIGN UP!" onclick="formValidate();" /> 

ユーザーが電子メール アドレスを入力していない場合は、javascript アラートがポップアップするようにし、ユーザーが [OK] を押したら、ページを同じままにしておきます。メールが有効になるまで action="signup.php" を実行したくありません。これは簡単なように思えますが、私はインターネット全体を見てきましたが、解決策が見つかりません。

ありがとう。

4

2 に答える 2

0

I finally figured out the answer. The key is to use the javascript submit() function. Rather than use an input type submit, I use just a regular button. Then, after javascript validates the form and the form has the proper data, I used the submit function. Here is my code below. If anyone is curious, feel free to ask me about it.

function formValidate(){

    //define form1 as registration form
    form1 = document.forms['_register1'];
    var submission = true;
    //make sure email address is not blank
    if (form1.elements['email'].value == 'Type Your Email Address Here') {

        alert('Please enter your email address.');

        form1.elements['email'].focus();

        var submission = false;
    } 
    //submit form if data is good
    if(submission != false){
        form1.submit();
    }
}

And here is the html:

    <input type="text" value="Type Your Email Address Here" name="email" title="Enter email" />

    <input type="button" value="SIGN UP!" onclick="formValidation();" />    
于 2013-08-04T15:38:04.000 に答える