输入长度限制,能不能参考一下通用做法啊 英文字符和中文一样长这样合适吗?直接计算字节数不好吗?
发布于 5 年前 作者 mochao 14539 次浏览 来自 官方Issues

https://developers.weixin.qq.com/miniprogram/dev/component/input.html

中英文表达同样意思的字符长度本来就有很大区别,能不能按照最简单的字节长度来计算啊?如果不愿意的话,起码也应该给两个不同的长度控制变量吧? 哎你们 拜托

3 回复

bindInputUserMsg: function(e) {

var countHanzi =0

var mixLengthNow=0

function replacer(match, offset, string) {

if (match.match(/[^\x00-\xff]/)) { countHanzi++ }

mixLengthNow = offset + countHanzi

if (mixLengthNow < 14) { return match } //在这里[控制]输入字符混合长度,中文字符算2个英文算1个,如七个汉字=14个英文 设置14

else { return '' }

//console.log("--Inside--", match, offset, string, countHanzi, mixLengthNow)

}

var value = e.detail.value.replace(/./g, replacer)

console.log("Input value: ", value, countHanzi)

// 返回去尾后的字符串,光标在最后

return value

},

你说的是这个属性吗?

你可以在change事件里 自己做处理 没必要为一个脱节的需求 而改变符合大众的需求 这样不太现实

回到顶部