我需要将文本字段限制为仅允许数字,因为数据会进入数据库,其中字段数据类型设置为一成不变的,我不会让人们提交货币值的“£”符号。
我知道我可以使用:
input type=number and also pattern [0-9]
但是根据大多数好的验证html工具,IE在旧浏览器中不支持它们,我知道IE9(及更老版本)不支持数字,我确信Pattern只有有限的支持。毫无疑问,Chrome和Mozilla的使用范围更广。
无论如何,我可以验证它是否适用于所有浏览器?
答案 0 :(得分: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();
}
}