我的输入有2个功能:

`isAllowedSymbol` and `checkLength`.


isAllowedSymbol效果很好,但checkLength效果不好。我需要使长度只有10个数字。我究竟做错了什么?我的错误在哪里?请为我提供确切的建议。

type="text" maxlength="10" name="answer" id="t" onkeyup="isAllowedSymbol(this);" onchenge="checkLength(this);" placeholder="Enter data" >

function checkLength(this) {

  var element = document.getElementById('t');

  if(document.createEvent)
  {
      var e = document.createEvent('HTMLEvents');
      e.initEvent('change', false, true);
      element.dispatchEvent(e);
  }
}

最佳答案

HTML5 maxlength将自动验证您的输入。但是,如果要进行更多验证,请尝试使用onkeydown而不是onchange

HTML:

    <input type="text" maxlength="10" name="answer" id="t" onkeyup="isAllowedSymbol(this)" onkeydown="checkLength(this)" placeholder="Enter data">


JavaScript:

function checkLength(obj){
 //Your validation code goes here.
}


希望这对您有帮助。

09-25 15:21