Javascript 在用户输入文本字段的同时进行检查

Javascript 在用户输入文本字段的同时进行检查,javascript,Javascript,我试图编写一个脚本,检查第二个文本字段是否与第一个字段中的数据相同。当用户输入第二个文本字段时,脚本会不断告诉他是否正确。如果他立即出错,脚本会通过将标签设置为“emails not match”(电子邮件不匹配)来指出错误 但是我到现在还没有成功 脚本: window.onload = startChecker; function startChecker() { //while(true) { if( document.getElementById("first_field").v

我试图编写一个脚本,检查第二个文本字段是否与第一个字段中的数据相同。当用户输入第二个文本字段时,脚本会不断告诉他是否正确。如果他立即出错,脚本会通过将
标签设置为“emails not match”(电子邮件不匹配)来指出错误

但是我到现在还没有成功

脚本:

window.onload = startChecker;

function startChecker() {
//while(true) {
    if( document.getElementById("first_field").value != "" ) {
        var idFromFirstField = document.getElementById("first_field").value;
          if(idFromFirstField != document.getElementById("second_field").value ) {
              document.getElementById("alert_message").value = "Incorrect Email ! ";
          } else {
              document.getElementById("alert_message").innerHTML = "Two emails match !";
            }
    }
//}
}
如果这是一个HTML文件:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="cross_checker.js">
</script>
<title>Untitled Document</title>
</head>

<body>
<form>
<label>Email<input type="text" id="first_field" /></label> <br /> <br />
<label>Verify your Email<input type="text" id="second_field" /></label> &nbsp;&nbsp;
<label id="alert_message" value="" style="color:#CC0000"></label> 
<!--the above label outputs if the user is entering the same id !--->
<br /> <br />
<input type="submit" value="submit" style="color:#CC0000"/>
</form>
</body>
</html>

无标题文件
电子邮件

验证您的电子邮件

早些时候,我尝试使用无限while循环,但这会挂起浏览器,有时浏览器会不断获取页面


如何改进此脚本,以便能够立即检查用户的操作是否正确?

向输入元素添加keyup处理程序。在HTML代码中,添加
onkeyup=“startChecker();”

使用JavaScript,您可以通过以下方式动态分配事件处理程序:

if(window.addEventListener) element.addEventListener("keyup", startChecker, true); //All major browsers
else if(window.attachEvent) element.attachEvent("onkeyup", startChecker);
else element.onkeyup = startChecker;
//Where element refers to the HTML element.