根据特定域验证电子邮件字段

时间:2010-04-13 16:09:24

标签: jquery

我的网站需要用户登录。客户端将只允许来自其公司域的用户获得访问权限。我需要根据电子邮件域地址验证该字段。即。只允许来自@ mycompany.com的电子邮件地址通过。

可以使用jquery.validate插件完成吗?我知道你可以在哪里查看它是否是有效的电子邮件,但我想确保它与特定模式匹配(@ mycompany.com)。

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:3)

只需使用 jQuery验证进行字符串比较检查电子邮件是否以预期的域名结尾

通过这种方式,您知道电子邮件显示有效,属于必填域。

这是检查域的可能方法。这实际上并不需要jQuery。

/**
 * Checks that the user's email is of the correct domain.
 * 
 * userInput: potential email address
 * domain:    Correct domain with @, i.e.: "@mycompany.com"
 * Returns:   true iff userInput ends with the given domain.
 */
function checkDomain(userInput, domain) {
        // Check the substring starting at the @ against the domain
        return (userInput.substring(userInput.indexOf('@')) === domain;
}

答案 1 :(得分:0)

In this example my domain is "@uol.edu.pk". You can do it like this. 


  $(document).ready(function (e) {
                $('#SubmitButton').click(function () {
                    var email = $('#form-email').val();
                    // Checking Empty Fields
                    if ($.trim(email).length == 0 || $("#form-first-name").val() == "" || $("#form-password").val() == "" || $("#Password1").val()=="") {
                        alert('All fields are Required');
                        e.preventDefault();
                    }
                    if (validateEmail(email)) {
                        alert('Good!! your Email is valid');
                    }
                    else {
                        alert('Invalid Email Address');
                        e.preventDefault();
                    }
                });
            });
            // Function that validates email address through a regular expression.
            function validateEmail(pEmail) {
                var filterValue = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
                if (filterValue.test(pEmail)) {
                    if (pEmail.indexOf('@uol.edu.pk', pEmail.length - '@uol.edu.pk'.length) != -1)
                    {
                        return true;
                    }
                    else {
                        alert("Email Must be like(yourName@uol.edu.pk)");
                        return false;
                    }
                }
                else
                {
                    return false;
                }
            }
    enter code here