HarmonyOS 如何限制TextInput的规则?

我需要限制数组最多两位小数。

TextInput({ text: this.uiState.extralValueFen, placeholder: '请填写' })  
  .backgroundColor(Color.Transparent)  
  .placeholderColor($r('app.color.gray_25_percent'))  
  .fontColor($r('app.color.black_85_percent'))  
  .fontSize(16)  
  .layoutWeight(1)  
  .maxLength(11)  
  .height(34)  
  .type(InputType.NUMBER_DECIMAL)  
  .onChange((value) => {  
    let result = value.replace(/^\D*([0-9]\d*\.?\d{0,2})?.*$/, '$1')  
    console.log("结果======="+result)  
    this.uiState.extralValueFen = result  
    this.vm?.extraChange(result)  
  })
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
HarmonyOS
2024-10-22 11:20:00
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
superinsect

请参考如下demo:

@Entry  
@Component  
struct TextInputExample {  
  @State message: string = ''  
  controller: TextInputController = new TextInputController()  
  build() {  
    Column() {  
      TextInput({placeholder: '请输入内容', text: this.message })  
        .width('100%')  
        .type(InputType.NUMBER_DECIMAL)  
        .maxLength(11)  
        .backgroundColor(Color.Green)  
        .onChange((value) => {  
          this.message = value  
          let reg = new RegExp('^(([1-9]{1}\\d*)|([0]{1}))(\\.(\\d){0,2})?$')  
          let res = reg.test(value)  
          if (!res) {  
            this.message = value.substring(0, value.length - 1)  
          } else {  
            this.message = value  
          }  
        })  
    }  
  }  
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
分享
微博
QQ
微信
回复
2024-10-22 17:16:36
相关问题
HarmonyOS TextInput输入内容限制
1491浏览 • 1回复 待解决
HarmonyOS sdk混淆规则
689浏览 • 1回复 待解决
HarmonyOS 混淆规则问题
792浏览 • 1回复 待解决
HarmonyOS 日历重复规则如何设置
812浏览 • 1回复 待解决
HarmonyOS 如何限制Flex行数
608浏览 • 1回复 待解决
HarmonyOS 如何做不规则流水布局
842浏览 • 1回复 待解决
HarmonyOS TextInput如何clearFocus
901浏览 • 1回复 待解决
HarmonyOS 如何获取TextInput输入
815浏览 • 1回复 待解决
HarmonyOS 如何隐藏TextInput光标
622浏览 • 1回复 待解决
HarmonyOS 包名规则
788浏览 • 1回复 待解决
TextInputonSubmit事件如何使用
3222浏览 • 1回复 待解决
HarmonyOS 应用包名命名规则
2304浏览 • 1回复 待解决
HarmonyOS TextInput如何换行输入
876浏览 • 1回复 待解决
HarmonyOS TextInput使用
1125浏览 • 1回复 待解决
HarmonyOS TextInput如何隐藏光标
572浏览 • 1回复 待解决
如何查询fd数量限制
2068浏览 • 1回复 待解决