簡體   English   中英

Sencha extjs setValue string to numberfield

[英]Sencha extjs setValue string to numberfield

我需要使用numberfield作為用戶輸入號碼。 當我設置字符串'123,555'時,它只顯示123到數字字段。 但是,如果我使用textfield,它會按預期工作。 我使用它進行千分離。

xtype: 'numberfield',
itemId: 'payment1',
cls : 'txtAlignRight',
flex : 4,
value:'0',
autoComplete: false,
autoCorrect: false,
clearIcon: false,
originalValue: true,
required: true,
maxLength: 15,

//------------------
num.setValue('123,555')
//result = 123

有沒有解決辦法呢? 提前致謝。 注意:我使用現代的sencha extjs 6。

您可以使用setRawValue()方法。 這將繞過使用setValue()時獲得的所有轉換和驗證。

文檔: http//docs.sencha.com/extjs/4.2.1/#!/api/Ext.form.field.Number-method-setRawValue

示例: https//fiddle.sencha.com/fiddle/1iuu/preview

這只會設置值,並且不會按照現在編碼的方式使用按鈕遞增/遞減。

改變允許的字符。 您可能想要更改這些屬性
這些屬性的工作方式就在這里

  1. autoStripChars:false,
  2. disableKeyFilter:true
  3. stripCharsRe:false
  4. maskRe:false

聽起來你需要將格式化添加到數字字段。

這里是一個覆蓋 ,增加了useThousandSeperator到numberfield

Ext.util.Format

提交的數字只允許數字(0-9和'。')如果您仍想在數字字段中允許','那么您可以通過以下屬性進行設置。

baseChars:'0123456789,'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM