0

これは、JavaScript を使用した私のメール アドレス検証コードです。警告メッセージは正しく機能していますが、有効な電子メール アドレスを指定して送信すると、「有効な電子メール アドレスを入力してください」という警告が表示されます。私を助けてください。

if(email=="")
{
    alert("Enter emailid");
    $("#email").focus();
    return false;
}

else if(email!="")
{
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

    if (!filter.test(email.value)) 
    {   
        //alert(email)
        //alert(filter.test(email.value)) 
        alert('Please provide a valid email address');
        email.focus();
        return false;
    }
}
4

3 に答える 3

1

あなたの質問に対する直接的な回答ではありませんが、この目的で HTML5 の電子メール入力を使用することはできませんか? ブラウザで処理できるのに、電子メール検証用の JavaScript コードを記述する必要はありません。次のようなものを使用します。

<input type="email" name="email">

オンスクリーン キーボードを使用するなど、これを使用することには多くの利点があります (@ および .com オプションを追加します)。

さまざまなタイプの HTML5 入力タイプについては、http ://www.w3schools.com/html/html5_form_input_types.asp を参照してください。

于 2013-10-03T11:22:05.793 に答える
0

コードに小さな間違いがあり、アラートが表示されます。

コードでこの行を探してください

if (!filter.test(email.value)) 

と置き換えます

if (!filter.test(email)) 

変数 Email は、フォームの Email フィールドの値を保持します。

そして別の変更は、この行を探します

email.focus();

これをに変更します

$("#email").focus();
于 2013-10-03T11:35:10.860 に答える