Javascript比较并验证两个文本字段

Javascript compare and validate two text fields

本文关键字:两个 文本 字段 比较 验证 Javascript      更新时间:2023-09-26

我有一个问题,我有以下javascript函数:

<script type="text/javascript">
<!--
function BothFieldsIdenticalCaseSensitive() {
    var two = document.bid_deal.passphrase_hidden.value;
    var three = document.bid_deal.passphrase.value;
    if(two == three) { return true; }
    alert("Warning!! passcodes must match!!!");
    return false;
}
//-->
</script>

我用它来比较两个文本字段,以确保这两个文本域匹配。它适用于一组文本文件,但如果我添加另一组文本字段并运行同一函数的另一个实例,它就会拒绝工作。

我有一个调用javascript函数,在执行操作时调用checkEnableSubmit,但我不知道为什么它不能处理多个文本字段集。然而,我注意到页面中的两个调用javascript行为都调用相同的checkEnableSubmit名称。如果我改了名字,它就会停止工作。

以下是JAVASCRIPT调用:<input name="passphrase" type="text" id="passphrase" onfocus="clearDefault(this)" onblur="MM_callJS('checkEnableSubmit')" value="Nopass" />

我需要实现这个脚本来为我的文本字段添加验证,请帮助我!!!!

您的BothFieldsIdenticalCaseSensitive函数只能在字段*passphras_hidden*和passphras上工作。

如果要检查另外两个字段,则必须为新字段创建另一个函数。例如,如果您使用ids*passphras_hidden1*和passphras1创建了两个字段,那么您可以使用此函数来验证它们的输入。。。

function BothFieldsIdenticalCaseSensitive2() {
    var two = document.getElementById('passphrase_hidden1').value;
    var three = document.getElementById('passphrase1').value;
    if(two == three) { return true; }
    alert("Warning!! passcodes must match!!!");
    return false;
}

您可以尝试的另一种选择是创建一个函数,并在该函数中传递您想要检查的两个字段:

function BothFieldsIdenticalCaseSensitive(fieldId1, fieldId2) {
    var two = document.getElementById(fieldId1).value;
    var three = document.getElementById(fieldId2).value;
    if(two == three) { return true; }
    alert("Warning!! passcodes must match!!!");
    return false;
}

编辑

您不应该使用此语法文档引用字段。bid_dal.passphrase_hidden,并非所有浏览器都实现此功能。在所有浏览器中工作的标准方法是调用document.getElementById('passphrase_hidden')。