在网页

时间:2017-09-27 04:23:26

标签: html css twitter-bootstrap

下面的html代码只接受数字作为输入,但我注意到在某些情况下随机它也接受字符,类似数字和输入退格的场景,然后键入字符,它接受字母。

<input type="number" class="form-control" name="digitalId" ng-model="data.digitalId" placeholder="digits can only be entered"> </div>

当用户提交表单时,上面的字段值存储在其列为integer类型的数据库中。但是当它接受字符并提交表单时,它会在屏幕上显示错误消息,但消息是详细消息,其中说明了DTO对象和属性类型。我想将自定义消息显示为&#34;只允许使用数字&#34;当用户提交表单时,字段中包含一些字符。任何建议都会有所帮助。

1 个答案:

答案 0 :(得分:0)

这是基于纯JavaScript的,因此它可以与角度一起使用,而不使用jquery

&#13;
&#13;
function validate(evt) {
  var theEvent = evt || window.event;
  var key = theEvent.keyCode || theEvent.which;
  key = String.fromCharCode( key );
  var regex = /[0-9]|\./;
  if( !regex.test(key) ) {
    theEvent.returnValue = false;
    if(theEvent.preventDefault) {
    console.log("only numbers allowed");
    theEvent.preventDefault();
  }
   
  }
}
&#13;
<input type="number" class="form-control" name="digitalId" ng-model="data.digitalId" placeholder="digits can only be entered" onkeypress="validate(event)"> </div>
&#13;
&#13;
&#13; A reference from this answer: