input限制中文字数
我们知道input控件有一个maxlength属性可以控制输入字符的长度,但是,它并不会识别是汉字还是其他符号,所以输入maxlength个汉字显然是不符合要求的。
为了实现对带有汉字的输入框长度控制,参考各位大神的贴子,我总结了一下方案:
定义js方法:
/*限制中英文皆可输入的文本框长度,使用方式参考以下:*/
/*<input type="text" onkeyup="checkLength(this, 10);" />*/
var checkLength = function(dom, maxLength){
var l = 0;
for(var i=0; i<dom.value.length; i++) {
if (/[\u4e00-\u9fa5]/.test(dom.value[i])) {
l+=2;
} else {
l++;
}
if (l > maxLength) {
dom.value = dom.value.substr(0,i);
break;
}
}
};
其中 /[\u4e00-\u9fa5]/ 为匹配汉字的正则。
达到maxlength时候,输入输入字符将不会在显示。
input限制中文字数的更多相关文章
- PHP 中如何正确统计中文字数
PHP 中如何正确统计中文字数?这个是困扰我很久的问题,PHP 中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了 strlen,mb_strlen,mb_strwidth 这个三个函数去测 ...
- input输入中文时,拼音在输入框内会触发input事件的问题。
问题描述: 监听文本输入框的input事件,在拼写汉字(输入法)但汉字并未实际填充到文本框中(选词)时会触发input事件,如图: 需要完成的需求就是在输入阶段不触发input中的事件,选词之后文字落 ...
- input事件中文触发多次问题研究
我们在网页中经常会遇到实时搜索的情况,或者其他类似需要input实时响应的问题,一般情况下,我们是利用input和propertychange事件来监听input内容的变化来响应,但是有一个问题就是当 ...
- UITextField限制输入中文字数
前面写一了篇,UITextField Category来限制输入的字数,是有个Bug的,要输入中文时会crash.如今改动 了下.代码例如以下 .h文件 #import <UIKit/UIKit ...
- PHP中文字数限制:中文字符串截取(mb_substr)
一.中文截取:mb_substr() mb_substr( $str, $start, $length, $encoding ) $str,需要截断的字符串 $start,截断开始处,起始处为0 $l ...
- input 限制 中文输入
ime-mode:disabled是什么? 解决: 1. ime-mode版本:IE5+专有属性 继承性:无 语法: ime-mode : auto | active | ina ...
- 解决adb shell input text 中文输入,unicode转utf-8
https://github.com/senzhk/ADBKeyBoard 上面这个是外国人写的一个输入法,我们把它安装再设置下就ok了 直接下载bin下的ADBKeyBoard.apk文件,或者上面 ...
- python 中文字数统计/分词
因为想把一段文字分词,所以,需要明确一定的词语关系. 在网上随便下载了一篇中文小说.随便的txt小说,就1mb多.要数数这1mb多的中文到底有多少字,多少分词,这些分词的词性是什么样的. 这里是思路 ...
- input输入框控制字数
HTML: <input class = "remark" type = "text" maxlength = "500"> J ...
随机推荐
- 【AtCoder】ARC092 D - Two Sequences
[题目]AtCoder Regular Contest 092 D - Two Sequences [题意]给定n个数的数组A和数组B,求所有A[i]+B[j]的异或和(1<=i,j<=n ...
- 写一个简易web服务器、ASP.NET核心知识(4)
前言 昨天尝试了,基于对http协议的探究,我们用控制台写了一个简单的浏览器.尽管浏览器很low,但是对于http协议有个更好的理解. 说了上面这一段,诸位猜到我要干嘛了吗?(其实不用猜哈,标题里都有 ...
- hash(2018年CSUST省赛选拔赛第一场B题+hash+字典树)
题目链接:http://csustacm.com:4803/problem/1006 题目: 思路:正如题目一样,本题是一个hash,比赛的时候用的字典树,但是不知道为什么一直RE(听学长说要动态开点 ...
- 数据库与sql注入的相关知识
数据库与sql注入的相关知识 sql语句明显是针对数据库的一种操作,既然想通过sql注入的方法来拿取数据那么就要先了解一下如何的去操作数据库,这方面并不需要对数据库有多么的精通但是如果了解掌握了其中的 ...
- 内存不够清理方法,costdown项目时如果裁剪不下来,也可以参考
Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches 频繁的文件访问会导致系统的Cache使用量大增 $ free -m total used free shared ...
- html中去掉文本框(input type="text")的边框或只显示下边框
去掉: <input type="text" name="textfield" style="border:0px;"&g ...
- Codeforces Round #455 (Div. 2)
Codeforces Round #455 (Div. 2) A. Generate Login 题目描述:给出两个字符串,分别取字符串的某个前缀,使得两个前缀连起来的字符串的字典序在所有方案中最小, ...
- 网页查看源码中<div>的含义
代码如下: /** HTML转义 **/ String s = HtmlUtils.htmlEscape("<div>hello world</div><p&g ...
- 集合遍历过程iterator, 添加删除元素报异常
list set 遍历过程中添加或者删除元素,报异常. 使用iterator 也会报异常 ConcurrentModificationException remove只能用迭代器的remove,而 ...
- 【摘要】JavaScript 的性能优化:加载和执行
1.浏览器遇到js代码会暂停页面的下载和渲染,谁晓得js代码会不会把html给强奸(改变)了: 2.延迟脚本加载:defer 属性 <html> <head> <titl ...