组,
我有一个快速的问题?
-是否有一种方法可以在最后一次按下按键时触发此onclick事件。

例如:验证reTypePwd文本框中的最后一个快捷键上的newPwd == reTypePwd。如果我的密码是foo,我希望事件在“ o”而不是“ f”上触发。

function allClear() {
 var newPasswd = document.getElementById('newPwd');
 var reTypePasswd = document.getElementById('reTypePwd');

 newPasswd.value = "";
 reTypePasswd.value = "";
 return true;
}
function validate()
 {
   var currPwd = document.getElementById("currPwd").value;
   var newPwd = document.getElementById("newPwd").value;
   var confirmNP = document.getElementById("reTypePwd").value;
   if(currPwd == "" || newPwd == "")
   {
      document.getElementById("btnChange").disabled = true;
      if(confirmNP!=newPwd){
      document.getElementById("confirm").value = "Doesn't Match";
    }
 }
     if(confirmNP!=newPwd)
     {
     document.getElementById("newPwd").style.cssText = "border-color:Red";
     document.getElementById("reTypePwd").style.cssText = "border-color: Red";
     }
     else {
           document.getElementById("btnChange").disabled = false;
           document.getElementById("newPwd").style.cssText = "border-color:none";
           document.getElementById("reTypePwd").style.cssText = "border-color: none";

            }
          }


谢谢

乍得

最佳答案

您不应专门使用onkeyup或onkeydown来检测用户输入。它们无法捕捉剪切,粘贴,拖放或拼写检查器更正等边缘情况。您应该使用HTML 5事件,oninput(如果可用)(Firefox 2 +,Google Chrome,Safari 4 +,Opera 10)和Internet Explorer的onpropertychange事件。对于不支持这两种事件的浏览器,您可以使用0ms计时器返回onkeydown进行检查,这比onkeyup好一点。

在较新的浏览器中,您可以检查oninput事件,这应该是最可靠的方法。

关于javascript - JavaScript表单验证“onKeyup与on keydown”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3789859/

10-09 13:05