关于ios下中文输入法 连续输入空格问题

在iOS移动端h5页面中,使用中文输入法连续输入时,英文字符间会出现编码为8198的特殊空格。这导致后台处理字符串时出现乱码问题。为了解决这一问题,可以关注DOM3级事件中的复合事件,包括compositionstart、compositionupdate和compositionend,它们用于处理IME的输入序列,帮助正确处理IME输入的文本。
摘要由CSDN通过智能技术生成

h5移动端页面 ,在iOS下中文输入法长输入的情况,会将英文输入,并且中间有空格。

这个空格看上去跟普通的空格没什么区别,其实不然。通过string.charAt 方法 log出它的编码是8198,普通空格的编码是32.

解决初衷:将未处理的字符串传到后台,后台无法识别,会带有?乱码出来

 

// conUpdate (flag,默认为false)
if (this.checkChinese) { // 是否需要汉字校验
            let inputName = document.getElementById(this.myid)
            // compositionstart 监控开始输入汉字
            //  监控汉字输入
            inputName.addEventListener('compositionupdate', function () {
                _this.conUpdate = true
            })
            // 监控汉字输入结束
            inputName.addEventListener('compositionend', function () {
                _this.conUpdate = false

            })
            // 当前input框blur
            inputName.addEve
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值