EXTJS vtype正则表达式为非十进制数

时间:2014-12-11 17:57:57

标签: regex extjs

如何在数字字段中仅允许0-99之间的非十进制数字。不允许使用小数。

Ext.apply(Ext.form.field.VTypes, {
        nonDecimalNumber: function (value) {
          return /^\d$/.test(value);
        },
        nonDecimalNumberText: 'Please enter a valid number without any decimal places'
});

Ext.define('ParameterNumberField', {
  extend: 'Ext.form.field.Number',
  xtype: 'numberfield',
  minValue: 0,
  maxValue: 90,
  allowBlank: false,
  maskRe: /[0-9.]/,  
  vtype: 'nonDecimalNumber'
});

3 个答案:

答案 0 :(得分:1)

  

如何在数字字段中仅允许0-99之间的非十进制数字。

^([1-9]\d|\d)$

DEMO

请注意,此正则表达式不允许使用000102等数字。

答案 1 :(得分:0)

^[0-9]?[0-9]$

这应该这样做。这将允许从099的数字。

答案 2 :(得分:0)

谢谢你们的回答。我实现了以下,它工作正常

nonDecimalNumber: function (value) {
    return  (/^[0-9].*/.test(value) && !(/(\.)/.test(value))); 
  },
  nonDecimalNumberText: 'Enter correct format'