如何防止在Ext文本字段中输入小数和负数-Extjs

时间:2019-06-05 04:33:11

标签: extjs

我有一个接受大输入数字的文本字段。我的问题是我是否使用 Ext.form.NumerField({})的大数字被转换为1e表示法,因此我无法使用toFixed()来解决。因此,我切换为使用Ext.form.TextField({})。但是,对于文本字段,我想防止用户输入十进制数字,负数,并且仅允许数字字段。 我只能使用正则表达式: var regex = /[0-9.]/,。 //仅允许数值 但是我不确定如何在正则表达式中获得所有上述条件(没有小数,也没有负数)。

对正则表达式的任何帮助将不胜感激。

谢谢

1 个答案:

答案 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();
            }
        }
    },