Extjs (numberfield validate )

numberfield validate :
allowDecimals: true,
decimalPrecision: 3,
可以自带三位小数
such as the number need (5.3)
the validate can use the regular expression 
 validator: function(val) {
     if (!Ext.isEmpty(val)) {
        return true;
     } else {
         return "Value cannot be empty";
     }
   }
1、只能输入整数:

属性:“DecimalPrecision” 是小数位数的设定,默认是2,为0意思就是小数位数0位,也是就整数了。
2、只能输入正数:

属性:AllowNegative 是否允许负数 默认为true。
3、只能输入正整数 就是把前两点的属性结合就是了

4、限制输入不是数字时为空




复制代码
这个例子限制了只能输入大于1的整数,那么如果你输入了aa,就自动变为空值。
5.关于显示小数点后面的0   比如 限制为3位小数  数字为7 但是页面的显示总是7 理想的是要7.000 
将下面的代码拷贝到javascript中就可
  1. //NumberField控件的值小數部份不忽略0 比如 值為5 顯示為5.0
  2. Ext.override(Ext.form.NumberField, {
  3. setValue: function(v) {

  4. v = typeof v == 'number' ? v : parseFloat(String(v).replace(this.decimalSeparator, "."));
  5. v = isNaN(v) ? '' : v.toFixed(this.decimalPrecision).replace(".", this.decimalSeparator);
  6. return Ext.form.NumberField.superclass.setValue.call(this, v);
  7. }
  8. });
复制代码
注意:该方法会把页面中所有的控件的小数位为0的根据控件的小数位数显示 


以下是NumberField控件的属性:
  1. fieldClass: 表单元素一般状态CSS样式(默认为"x-form-field")。
  2. allowDecimals: 值为 False时将不接受十进制值 (默认为true)
  3. decimalSeparator: 设置十进制数分割符(默认为 '.')
  4. decimalPrecision:设置小数点后最大精确位数(默认为 2)
  5. allowNegative: 值为 False时只允许为正数(默认为 true,即默认允许为负数)。
  6. minValue: 允许的最小值(默认为Number.NEGATIVE_INFINITY)
  7. maxValue: 允许的最大值(默认为Number.MAX_VALUE)
  8. minText: 最小值验证失败(ps:超出设置的最小值范围)时显示该错误信息(默认为{ minValue })
  9. maxText:最大值验证失败(ps:超出设置的最大值范围)时显示该错误信息(默认为{ maxValue })
  10. nanText:当值非数字时显示此错误信息。例如,如果仅仅合法字符如'.' 或 '-'而没有其他任何数字出现在该域时,会显示该错误信息。(默认为"{value})
  11. baseChars:接受有效数字的一组基础字符(默认为0123456789)
  12. vtypeText:在当前字段的vtype中,制定一个错误信息代替默认的(默认为null)。如vtype不设置该项就无效。
  13. stripCharsRe:一个JavaScript正则表达式,用于在进行验证该动作之前抽离不需要的内容(默认为null)。
  14. grow : 当值为 true 时表示字段可以根据内容自动伸缩
  15. growMin : 当 grow = true 时允许的字段最小宽度(默认为 30)
  16. growMax : 当 grow = true 时允许的字段最大宽度(默认为 800)
  17. vtype:Ext.form.VTypes中定义的效验类型名(默认为 null)
  18. maskRe:一个用来过滤无效按键的正则表达式(默认为 null)
  19. disableKeyFilter : 值为 true 时禁用输入按键过滤(默认为 false)
  20. allowBlank:值为 false 时将效验输入字符个数大于0(默认为 true)
  21. minLength:输入字段所需的最小字符数(默认为 0) 
  22. maxlength: 输入字段允许的最大字符数(默认为 Number.MAX_VALUE)
  23. minLengthText:输入字符数小于最小字符数时显示的文本(默认为{minLength}")
  24. maxLengthText :输入字符数小于最小字符数时显示的文本(默认为{maxLength}")
  25. selectOnFocus: 值为 ture 时表示字段获取焦点时自动选择字段既有文本(默认为 false)
  26. blankText: 当允许为空效验失败时显示的错误文本(默认为"This field is required")
  27. validator: 字段效验时调用的自定义的效验函数(默认为 null)。如果启用此项,则此函数将在所有基础效验(allowBlank、minLength、maxLength和任意的vtype)成功之后被调用,调用函数时传递的参数为该字段的值。且此函数的有效返回应为成功时返回 true,失败时返回错误文本。
  28. Regex: 一个用以在效验时使用的 JavaScript 正则表达式对象(默认为 null)。如果启用此项,则此正则表达式将在所有基础效验成功之后被执行,执行此正则表达式时传递的参数为该字段的值。如果效验失败,则根据regexText的设置将字段标记为无效
  29. regexText: 当regex被设置且效验失败时显示的错误文本(默认为 "")。
  30. emptyText: 空字段中显示的文本(默认为 null)。注意,只要这个字段是被激活的而且name属性是有被指定的,那么也会发送到服务端。
  31. emptyClass: emptyText使用的CSS样式类名(默认为 'x-form-empty-field')。此类的添加与移除均由当前字段是否有值来自动处理
  32. enableKeyEvents: True表示,为HTML的input输入字段激活键盘事件的代理(默认为false)
  33. fieldLabel: 在组件旁边那里显示的label文本(默认为'')。
  34. inputType: input字段的type属性,诸如 radio、text、password、file等的元素都有type属性。属性是“file”与“怕ssword”就要在这里设置了,因为当前Ext并没有这些单独的组件。注意当你使用inputType:'file'时,emptyText就避免使用。
  35. tabIndex: 字段的tabIndex。注意这只对已渲染的元素有效,applyTo的那些无效(默认为undfined)
  36. value: 字段初始化的值(默认为undefined)

你可能感兴趣的:(ExtJs,extjs,numberfield)