2013-10-04 39 views
0

我想在用戶嘗試在extjs的數字字段中輸入字母時發送消息。我的代碼如下:如何在用戶嘗試使用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*', 
}); 

請幫我要同

;

回答

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*' 

});

});

1

ExtJS numberfield已被設計用於防止輸入非數字值。因此,您可以輸入的唯一字母是E,因爲它可以輸入類似10E38(然後被翻譯成10^38)的內容。然而,這樣你就可以欺騙數字字段,只留下E,這當然不是一個有效的數值。在這種情況下的默認消息是'該字段中的值是無效的',可以通過設置屬性invalidText的值來改變該值。

參見:

相關問題