强制一个文本字段是一个有效的电子邮件?

这个问题在这里已经有了答案:

  • 如何验证JavaScript中的电子邮件地址? 68个答案

  • 只支持较新的浏览器? 尝试这个:

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

    请注意,支持有限,但如果它落入这些浏览器中,它可能适用于您:

    http://caniuse.com/#feat=forms

    在相关说明中:

    在JavaScript中验证电子邮件地址?


    function IsEmail(email) {
        var regex = /^([a-zA-Z0-9_.+-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
        return regex.test(email);
    }
    

    您可以使用@Mike Robinson的答案以及一些简单的验证(在此处找到)作为旧版浏览器的回退:

    HTML:

    <input type="email" name="emailaddress" id="valid_email"><div class="validate">Please enter a valid email!</div>
    

    JS:

    $('.validate').hide();
    $('body').on('blur', '#valid_email', function() {
        $('.validate').hide();
        if(!isValidEmailAddress($(this).val())) {
           $('.validate').show();
        }
    });
    
    function isValidEmailAddress(emailAddress) {
        var pattern = new RegExp(/^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$/i);
        return pattern.test(emailAddress);
    };
    

    小提琴

    或者,更简单的,你可以使用jQuery验证插件。

    您还需要在后端进行验证,您可以使用PHP筛选器执行此操作:

    if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
        // do something if email is valid
    }
    
    链接地址: http://www.djcxy.com/p/16503.html

    上一篇: Forcing a text field to be a valid email?

    下一篇: How to do Email validation using Regular expression in Typescript