0

以下javascript通过在提交之前比较“required_email”和“verify_email”的两个输入“name”值来工作。问题是“名称”实际上是“必需的电子邮件”和“验证电子邮件”。javascript 中的名称似乎不支持破折号。显然,最简单的解决方案是使用下划线或不使用空格,但这是不可能的,因为服务器端表单处理会查找使用破折号的特定“名称”。

我可以为两个输入中的每一个添加一个 ID,所以我只需要知道如何修改以下 javascript 以将 #input1 与 #input2 进行比较(也就是使用 ID 而不是名称值)。

function checkEmail(theForm) {
    if (theForm.required_email.value != theForm.verify_email.value)
    {
        alert('Your emails don\'t match.');
        return false;
    } else {
        return true;
    }
}

PS。我需要用纯 javascript(不是 jQuery 或其他框架)完成此操作。

4

3 回答 3

1
function checkEmail(theForm) {
    if (document.getElementById("required-email").value != document.getElementById("verify-email").value)
    {
        alert('Your emails don\'t match.');
        return false;
    } else {
        return true;
    }
}
于 2012-05-07T16:32:40.360 回答
0

在这种情况下,您可以使用其他属性访问语法:

if (theForm["required-email"].value != theForm["verify-email"].value)
于 2012-05-07T16:31:41.360 回答
0

如果你给他们两个id,那么它很简单:

var required = document.getElementById('required_email').value;
var verified = document.getElementById('verify_email').value;
if(required != verified){
  alert('emails do not match');
  return false;
}else{
  return true;
}
于 2012-05-07T16:35:04.577 回答