HarmonyOS TextInput输入内容限制
输入手机号时,只允许用户输入0-9的数字,展示时,采用手机号的3-4-4格式(135 6655 4444);
a.只设置.type(InputType.PhoneNumber)时,用户可以输入0-9和 ‘+’ ‘-’ ‘ ’,不满足要求;
b.设置.inputFilter(’\d| ‘})时,用户可以输入0-9和‘ ’,不满足要求;
c.设置.inputFilter(’\d’})时,用户可以输入0-9,展示内容非3-4-4格式,不满足要求;
该如何配置才能满足业务要求?
TextInput({ placeholder: '请输入手机号', text: this.inputPhoneVal })
.type(InputType.PhoneNumber)
.inputFilter('\\d| '})
.backgroundColor('#00000000')
.margin({ left: 2 })
.padding({ left: 10 })
.maxLength(13)
.placeholderColor('#879499')
.height(50)
.copyOption(CopyOptions.None)
.fontColor('#666666')
.fontSize('18fp')
.flexGrow(1)
.stateStyles({ pressed: this.onPress })
.onChange((eventPhoneVal) => {
try {
let phoneArr = eventPhoneVal.split("");
let phoneArrMark: string[] = new Array();
for (let i = 0; i < phoneArr.length; i++) {
if (phoneArr[i] != " ") {
phoneArrMark.push(phoneArr[i]);
}
}
if (phoneArrMark.length > 0) {
this.showPhoneDel = true;
if (phoneArrMark.length >= 3) {
phoneArrMark.splice(3, 0, " ");
}
if (phoneArrMark.length >= 8) {
phoneArrMark.splice(8, 0, " ");
}
} else {
this.showPhoneDel = false;
}
let str = ''
phoneArrMark.forEach(val=>{
str += val;
})
this.inputPhoneVal = str;
if (this.isCanBack) {
let ruleIndex = 0
this.arr_ruleWinnerData = []
this.cachePhoneListState = false
this.arr_showDeleteBtn = false
this.arr_WinnerData.reverse().forEach((val) => {
if (val.startsWith(StringDataUtils.replaceAll(eventPhoneVal, " ", "")) && eventPhoneVal != "") {
this.arr_ruleWinnerData[ruleIndex] = val
this.cachePhoneListState = true
ruleIndex++
}
})
}
} catch (e) {
EpassConsole.instance.printErr(e)
}
})
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS TextInput如何阻止其输入内容
46浏览 • 1回复 待解决
TextInput组件能根据输入内容改成动态长度吗?
354浏览 • 1回复 待解决
#鸿蒙通关秘籍#TextInput组件如何根据输入内容改变组件本身的长度?
122浏览 • 1回复 待解决
如何监听输入法输入内容的变化?
396浏览 • 1回复 待解决
TextInput输入内容超过一行后,当失去焦点时(键盘关闭)如何展示
1941浏览 • 1回复 待解决
HarmonyOS web组件强占输入框焦点,导致输入框光标闪烁但无法输入内容
32浏览 • 1回复 待解决
TextInput组件如何清空输入框内输入的内容
617浏览 • 1回复 待解决
开源鸿蒙ArkUI中,TextInput、TextArea输入组件如何输入追加内容
6575浏览 • 1回复 待解决
#鸿蒙学习大百科#如何设置RichEditor无输入内容时的一个提示内容?
217浏览 • 1回复 待解决
输入框组件,是否有输入内容后自动弹出的删除按钮X,还是需要自己用代码实现
949浏览 • 1回复 待解决
#鸿蒙学习大百科#如何监听RichEditor添加输入法输入内容前和完成输入后可触发的回调?
276浏览 • 1回复 待解决
HarmonyOS 如何限制TextInput的规则?
441浏览 • 1回复 待解决
textInput这类组件如何没有限制最大长度是可以无限输入吗?
894浏览 • 1回复 待解决
HarmonyOS TextInput的text属性包含“�”时,输入框内容被异常清空
10浏览 • 1回复 待解决
#鸿蒙学习大百科#如何实时获取TextInput输入的内容?
434浏览 • 1回复 待解决
HarmonyOS TextInput如何换行输入
38浏览 • 1回复 待解决
TextInput怎么输入中文
3036浏览 • 0回复 待解决
怎么设置当前组件是否可以被拖入内容
801浏览 • 1回复 待解决
#鸿蒙通关秘籍#TextInput如何限制输入字符为某些字符?比如英文字母
161浏览 • 1回复 待解决
HarmonyOS TextInput如何开启禁止输入
45浏览 • 1回复 待解决
如何过滤textinput组件内容
457浏览 • 1回复 待解决
HarmonyOS 如何获取TextInput输入的值
42浏览 • 1回复 待解决
HarmonyOS textInput 如何清空输入框
0浏览 • 0回复 待解决
TextInput如何禁止输入emoj表情
607浏览 • 1回复 待解决
demo如下: