我有一个接受大输入数字的文本字段。我的问题是我是否使用
Ext.form.NumerField({})
的大数字被转换为1e
表示法,因此我无法使用toFixed()
来解决。因此,我切换为使用Ext.form.TextField({})
。但是,对于文本字段,我想防止用户输入十进制数字,负数,并且仅允许数字字段。
我只能使用正则表达式:
var regex = /[0-9.]/,
。 //仅允许数值
但是我不确定如何在正则表达式中获得所有上述条件(没有小数,也没有负数)。
对正则表达式的任何帮助将不胜感激。
谢谢
答案 0 :(得分:2)
如果您只想验证输入,请使用以下正则表达式:
/^\d+$/
但是,如果您阻止输入,请在文本字段中添加:
enableKeyEvents:true,
listeners:{
keydown : function(t,e) {
var code = e.browserEvent.keyCode;
console.log(code);
if ((code < 48 || code > 57) &&(code !== 8)){
e.stopEvent();
}
}
},