/*
* - LGPL
*
- * Input
- *
+ * Number field
*/
/**
* @cfg {Boolean} allowNegative False to prevent entering a negative sign (defaults to true)
*/
allowNegative : true,
+
+ /**
+ * @cfg {Boolean} allowZero False to blank out if the user enters '0' (defaults to true)
+ */
+ allowZero: true,
/**
* @cfg {Number} minValue The minimum allowed value (defaults to Number.NEGATIVE_INFINITY)
*/
* if a valid character like '.' or '-' is left in the field with no number (defaults to "{value} is not a valid number")
*/
nanText : "{0} is not a valid number",
- /**
- * @cfg {Boolean} castInt (true|false) cast int if true (defalut true)
- */
- castInt : true,
/**
* @cfg {String} thousandsDelimiter Symbol of thousandsDelimiter
*/
if(this.rendered){
- Roo.log(v);
-
this.hiddenEl().dom.value = (v === null || v === undefined ? '' : v);
- this.inputEl().dom.value = Roo.util.Format.number(v, this.decimalPrecision,
- this.thousandsDelimiter || ''
- );
+ this.inputEl().dom.value = (v == '') ? '' :
+ Roo.util.Format.number(v, this.decimalPrecision, this.thousandsDelimiter || '');
- if(this.allowBlank && !v) {
+ if(!this.allowZero && v === '0') {
+ this.hiddenEl().dom.value = '';
this.inputEl().dom.value = '';
}
beforeBlur : function()
{
- if(!this.castInt){
- return;
- }
-
var v = this.parseValue(this.getRawValue());
- if(v){
+
+ if(v || v === 0 || v === ''){
this.setValue(v);
}
},