0

当用户尝试在 extjs 的数字字段中输入字母时,我想发送消息。我的代码如下:

txtDecDHR = Ext.create('Ext.form.field.Number', {
    width: 320,
    hideTrigger: true,
    keyNavEnabled: false,
    mouseWheelEnabled: false,
    value:'10.69',
    labelWidth: 100,
    style: {
            marginLeft: '10px',
                marginTop: '2px'
        },
    fieldLabel: 'Number*',
});

请帮助我

;

4

2 回答 2

1

请找到示例。

Ext.onReady(函数(){

txtDecDHR = Ext.create('Ext.form.field.Number',

{

width: 320,

hideTrigger: true,

enableKeyEvents:true,

keyNavEnabled: false,

mouseWheelEnabled: false,

 listeners:{

    keyup:function( field, event ){

           var keyNum=parseInt(event.getCharCode());

           if(keyNum>47 && keyNum <58 || keyNum>95 && keyNum<106 ){

               alert("Number");

             }
                else{
               alert("alphabet or special character");


               }

          }

    },

value:'10.69',

renderTo:document.body,

labelWidth: 100,

style: {

        marginLeft: '10px',

            marginTop: '2px'

    },

fieldLabel: 'Number*'

});

});

于 2013-10-04T12:35:45.117 回答
1

ExtJS numberfield 已经被设计为防止输入非数字值。因此,您可以输入的唯一字母是 E,因为它允许输入类似 10E38 的内容(然后被翻译成 10^38)。但是,通过这种方式,您可以欺骗数字字段并只留下 E,这当然不是有效的数值。这种情况下的默认消息是“该字段中的值无效”,可以通过设置属性的值来更改invalidText

也可以看看:

于 2013-10-04T19:06:23.047 回答