可以在JavaScript中验证确切的电子邮件地址吗?

时间:2013-10-27 20:04:58

标签: javascript

更新:认为这清楚地说明这是一项家庭作业,并且阅读所写内容的责任应该在于,那些正在阅读它的人,但有人建议我应该澄清,所以帖子没有被那些没有真正阅读它的人拒绝投票!

所以这里说:澄清一下,我明白客户端验证是不安全的(你应该总是对现实世界的项目使用服务器端验证) - 再次,这只是大学练习的一部分来学习像这样的东西的必要语法&任何人都不应该把它作为一个现实世界的例子来混淆......


我现在一直在寻找,并尝试了许多不同的东西,但似乎没有任何工作,所以我不确定这甚至可以做到。我们的家庭作业要求我们这样做只有两(2)个电子邮件/密码组合才能登录我们的“网站”。

我们没有使用服务器端验证,&我们给出的示例只是验证在电子邮件/密码字段中输入的最小字符数(HTML5将确认正在使用正确的电子邮件格式)。

我的问题是:你能编写JS来验证一个确切的电子邮件地址/密码,即电子邮件:joe@joeschmoe.com / PW:blowhard。并且,如果输入任何其他内容,将生成错误消息,就像第一个示例生成的错误消息一样,它使用的是字符数?我不打算使用REGEX,只需一个电子邮件地址/密码组合(实际上,在这种情况下,它是2封电子邮件/ 2个密码)。谢谢,以下代码是我正在努力的......

    // Validate!
if ((email.value.length > 0) && (password.value.length > 6)) {
    return true;
} else {
    alert('Please fill out the form accurately!');
    return false;
}

   // Validate!
if ((email.value == user@myonlinestore.com) && (password.value == JustMe69)) {
    return true;
} else {
    alert('Please fill out the form accurately!');
    return false;
}

.value来自下面的表单元素引用,之后列出了我正在使用的HTML表单:

    // Get references to the form elements:
var email = document.getElementById('email').value;
var password = document.getElementById('password').value;

    <form action="myaccount.html" method="get" id="loginForm">
    <fieldset>
        <legend>Login</legend>
        <div>
            <label for="email">Email Address</label>
            <input type="email" name="email" id="email" required autofocus>
        </div>
        <div>
            <label for="password">Password</label>
            <input type="password" name="password" id="password" required>
        </div>
        <div>
            <label for="submit"></label>
            <input type="submit" value="Login &rarr;" id="submit">
        </div>
    </fieldset>
</form>

1 个答案:

答案 0 :(得分:0)

将电子邮件和密码视为字符串,方法是将它们括在引号中:

if ((email.value == 'user@myonlinestore.com') && (password.value == 'JustMe69')) {

修改

阅读更新后,您似乎无需使用email.value。在本声明中:

var email = document.getElementById('email').value;

您已将email字段的值指定给email变量。同样适用于password,因此您可以针对email变量检查电子邮件字符串('user@myonlinestore.com'):

if ((email == 'user@myonlinestore.com') && (password == 'JustMe69')) {