iput输入框限制中文汉字只能输入10个字符,英文20个字符!

产品提了一个需求,要求输入框输入汉字的时候只能输入10个汉字 英文的话只能输入20个,当时不知道怎么做,后来通过百度查找到了答案。

@input绑定limitLength方法

limitLength(e) {let value = e.detail.valueconst split = value.split('');//判断一段文字里面有几个汉字跟英文const map = split.map((s, i) => {return (value.charCodeAt(i) >= 0 && value.charCodeAt(i) <= 128) ? 1 : 2;});//计算数组相加的综合let charLength = map.length > 0 && map.reduce((accumulator, currentValue, index) => {const count = accumulator +A currentValue;return count});//判断长度是否大于20 大于20调用字节截取if (charLength <= 20) {this.newData.name = value} else {//使用setTimeout方法异步修改input的值 直接修改不起作用setTimeout(() => {//调用字节截取内容的方法修改输入框的值this.newData.name = this.reBytesStr(this.newData.name, 20)}, 10)}},//通过字节截取字符串/*** @param {String} str //要截取的字符串* @param {Number} len //要截取的长度*/reBytesStr(str, len) {if ((!str && typeof(str) != 'undefined')) {return '';}var num = 0;var str1 = str;var str = '';for (var i = 0, lens = str1.length; i < lens; i++) {num += ((str1.charCodeAt(i) > 255) ? 2 : 1);if (num > len) {break;} else {str = str1.substring(0, i + 1);}}return str;}

以上就是我的解决方法。
补充:uni-app 设置maxlength 用户用手机自带输入法会在输入拼音的时候就导致无法打出完整的字。控制用户输入的长度也可以用这种方式,或者在提交按钮的时候校验字符长度

input输入框限制中文汉字只能输入20个字符,英文10个字符!相关推荐

  1. ubuntu 20.04 安装好搜狗输入法无法输入中文,只能输入英文的问题,因为没有安装依赖

    ubuntu 20.04 安装好搜狗输入法无法输入中文,只能输入英文的问题. 在搜狗官网下载了搜狗输入法sogoupinyin_3.4.0.9700_amd64.deb, 使用命令 sudo dpkg ...

  2. 解决 input 输入框在中文输入法下的 bug

    最近本山人在项目的开发过程中遇到这么一个问题: 在列表中嵌入antd的Input输入框,切换到微软输入法输入时,就不能成功输入中文字符,然而搜狗输入法又是正常的. 研究一番,发现是input的valu ...

  3. 解决React中input输入框在中文输入法下的bug

    解决React 中input 输入框在中文输入法下的bug 需求:封装Input 组件,输入拼音过程中不触发onChange,拼音输入结束后触发onChange 原理:input 标签上面有两个事件, ...

  4. input的onchange事件 及只能输入数字实现

    2019独角兽企业重金招聘Python工程师标准>>> <input type="text" class="currentPage"&g ...

  5. react根据中文获取拼音_解决 React 中的 input 输入框在中文输入法下的 bug

    以下会涉及到的技术点:react mobx compositionstart compositionupdate compositionend 问题描述 在使用 input 时,通常会对输入的内容做校 ...

  6. Android 输入框(EditText)的输入限制,数字英文邮箱,可见\隐藏切换,踩过的坑!

    目录 一.输入框的输入限制 1.在xml文件里通过设置属性限制输入 2.在代码里动态设置输入限制 二.密码可见性切换和遇到的坑 最近做到了登录注册模块的各种输入判定,监听等等,因为需求上的需要,还是搞 ...

  7. WPS在中文状态下输入的标点符号为英文的问题

    wps在中文状态下输入标点符号时,一直显示英文标点,切换中英文仍然出现改问题, 方法:按住"CTRL+.",即可输入中文标点哦!

  8. Qt实用技巧:实用掩码限制QLineEdit只能输入规定长度的数字、字母和字符

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/113030404 长期持续带来更多项目与技术分 ...

  9. java 汉字 字母_JAVA获取中文汉字字符串拼音首字母,英文字符不变的工具类

    java在处理项目需求时,有时需要排序,尤其是中文名字按0-9,A-Z进行首字母排序,这时候就需要首先要得到中文字符串的首字母,然后按照字母顺序进行排序,不多说,直接上代码,看java如何获取中文字符 ...

最新文章

  1. 多模态大模型——通用人工智能路径的探索
  2. SQL Server 执行计划缓存
  3. 设计模式:装饰者模式(Decorator)
  4. 细说 Lambda 表达式
  5. 2、前端环境搭建(19.04.12)
  6. SQL语言之DQL语言学习(十)子查询
  7. STL6大标准库的关系和作用
  8. c++ 13.二维数组
  9. 一个Json在线格式化的网站
  10. 成都两年JAVA工程师_成都Java工程师学习路线
  11. Qt编写数据可视化大屏界面电子看板12-数据库采集
  12. 安卓手机端运行的adb工具_MQTT通信手机端接收生产车间设备运行信息3
  13. 10许可证即将到期_食品经营许可证延续
  14. 14、Date and Time (日期和时间)
  15. 计算机主机ppt课件,怎么用电脑制作ppt课件
  16. Shell入门教程[2]
  17. “感受野”的直观理解
  18. 由114.114.114.114和8.8.8.8学习DNS
  19. MySQL 数据库 分组查询
  20. MySQL学习(一)——常用语句

热门文章

  1. npm 错误 -errno -4048
  2. MySQL实训报告【带源码】
  3. 2018.8.18日,直播笔记
  4. 天梯练习题(C语言版)
  5. 【CentOS7联网】保姆级手把手解决CentOS7的上网问题
  6. Datawhale二手车预测Task
  7. Python合并两个列表的方法
  8. MFC exe文件生成的图标更改方法
  9. mysql 重量 什么类型_航空货物运输中的计费重量,指货物毛重与体积重量中的高者。...
  10. 双足机器人的稳定性判据_双足机器人行走稳定性探究.pdf