3

shtml ページで正規表現と jquery を使用して電子メール テキストボックスを検証しているときに、正規表現に「@」が含まれているため、正規表現の問題を示すエラーが表示されます。

$(document).ready(function() {

$('#btn-submit').click(function() { 

    $(".error").hide();
    var hasError = false;
    var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;   //"@" in regex is the issue

    var emailaddressVal = $("#UserEmail").val();
    if(emailaddressVal == '') {
        $("#UserEmail").after('<span class="error">Enter email address.</span>');
        hasError = true;
    }

    else if(!emailReg.test(emailaddressVal)) {
        $("#UserEmail").after('<span class="error">Enter a valid email address.</span>');
        hasError = true;
    }

    if(hasError == true) { return false; }

   });
});
4

2 に答える 2

13

@@は MVC のエスケープ シーケンスであり、次のようにレンダリングされます。@

var emailReg = /^([\w-\.]+@@([\w-]+\.)+[\w-]{2,4})?$/;

上記のステートメントは次のようにレンダリングされます

var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
于 2013-07-05T11:08:48.247 に答える