0

我需要将文本字段限制为仅允许数字,因为数据进入数据库,其中字段数据类型是一成不变的,我不希望人们提交货币价值的“£”符号。

我知道我可以使用:

 input type=number and also pattern [0-9] 

但是根据大多数优秀的验证 html 工具 IE 在旧版浏览器中不支持它们,我知道 IE9(和更早版本)不支持 number 并且我确信 Pattern 只有有限的支持。难怪 Chrome 和 Mozilla 被广泛使用。

无论如何我可以验证它是否可以在所有浏览器中工作?

4

1 回答 1

0

这也适用于石器时代的浏览器

ctrl+v(在场景中不起作用)

<input type='text' onkeypress='validate(event)' />

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) theEvent.preventDefault();
  }
}

工作小提琴

于 2013-10-01T08:45:14.237 回答