小程序
小游戏
企业微信
微信支付
扫描小程序码分享
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事件里 自己做处理 没必要为一个脱节的需求 而改变符合大众的需求 这样不太现实
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
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事件里 自己做处理 没必要为一个脱节的需求 而改变符合大众的需求 这样不太现实