我有一个要求,textfield/numberfield
现在应该只允许0 to 99999.99
5 位数字和 2 位小数之间的值。
应限制用户使用任何无效号码。
我不擅长正则表达式,但这能解决我的问题吗?任何解决此问题的指针将不胜感激。
我需要限制用户输入任何超过 5 位的值。在 5 位之后只能放置一个小数,超过 2 位
有什么建议么 ?
我有一个要求,textfield/numberfield
现在应该只允许0 to 99999.99
5 位数字和 2 位小数之间的值。
应限制用户使用任何无效号码。
我不擅长正则表达式,但这能解决我的问题吗?任何解决此问题的指针将不胜感激。
我需要限制用户输入任何超过 5 位的值。在 5 位之后只能放置一个小数,超过 2 位
有什么建议么 ?
您需要添加自定义验证类型VTypes。
addCustomVtypes : function() {
var mRegex = /^\d{0,5}(\.\d{0,2})?$/;
Ext.apply(Ext.form.field.VTypes, {
mRegex : function(val, field) {
return ralphaNumHyphen.test(val);
},
mRegexText : 'Invalid input. Message here.',
mRegexMask : /\d{0,5}(\.\d{0,2})?$/i
});
}
您可以在应用程序启动时调用它。
然后,在您的文本字段上,添加vtype: mRegex
.
Ext.create('Ext.form.Panel', {
title: 'On The Wall',
width: 300,
bodyPadding: 10,
renderTo: Ext.getBody(),
items: [{
xtype: 'numberfield',
anchor: '100%',
name: 'bottles',
fieldLabel: 'Bottles of Beer',
value: 0,
maxValue: 99999.99,
minValue: 0
}],
buttons: [{
text: 'Take one down, pass it around',
handler: function() {
this.up('form').down('[name=bottles]').spinDown();
}
}]
});
来自:http ://docs-origin.sencha.com/extjs/4.0.7/#!/api/Ext.form.field.Number