`
lncdzh
  • 浏览: 28505 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

text_area限定字数

    博客分类:
  • js
 
阅读更多
//以下三个为用于限定textarea字数
   var desc="";
   function LimitTextArea(field){
		maxlimit=300;
		if (field.value.length > maxlimit)
		field.value = field.value.substring(0, maxlimit);
   }
   function qk(field){
		field.value=desc;
   }
   function onb(field){
		desc=field.value;
   }

function isOver(sText,len)
{
	var intlen=sText.value.length;
	if (intlen>len)
	{
		alert("文字长度必须小于等于"+len);
		sText.value = sText.value.substring(0, len);
		sText.focus();
		//sText.select();
	}
}

1. 起初的解决方法: 
<textarea rows="4" cols="10" onkeydown="return maxlength(this, 5);"></textarea> 
function maxlength(node, maxcount) { 
if (node.value.length >= maxcount) { 
return false; 
} 
return true; 
} 
上面的解决办法虽然能够限制最多可输入字符数为 5 个,但是当已经输入 5 个字符后,就不会响应任何的键盘操作了, 
这将会惹恼那些想通过“Delete”或“Backspace”按键修改字符串的用户。 
2. 改进的解决方案: 
<textarea rows="4" cols="20" onkeydown="return maxlength2(event, 5);"></textarea> 
function maxlength2(event, maxcount) { 
// 以下三步操作是为了兼容FF和IE 
var event = event || window.event; 
var target = event.target || event.srcElement; 
var keyCode = event.charCode || event.keyCode; 
// 8 - backspace , 46 - delete 
if (keyCode != 8 && keyCode != 46) { 
if (target.value.length >= maxcount) { 
return false; 
} 
} 
return true; 
} 
虽然这样可以满足一定的需求,但是如果用户在输入最大字符后想按“Enter”等按键呢。 
考虑到onkeydown是在键盘按下,但是文字尚未输入文本框中,而onkeyup时文字已经输入文本框, 
所以我们可以先允许用户输入,然后进行字符串截断的策略。 
3. 先输入字符后截断字符的解决办法: 
<textarea rows="4" cols="20" onkeyup="return maxlength3(this, 5);"></textarea> 
function maxlength3(node, maxcount) { 
if (node.value.length > maxcount) { 
node.value = node.value.substr(0, maxcount); 
} 
} 

 

 

分享到:
评论

相关推荐

    PyPI 官网下载 | core_module_text_area_app-1.4.0.tar.gz

    标题中的"PyPI 官网下载 | core_module_text_area_app-1.4.0.tar.gz"表明我们正在讨论的是一个在PyPI上发布的名为`core_module_text_area_app`的Python库,版本为1.4.0,其打包格式为tar.gz。 `core_module_text_...

    jeesite 4.x.x 的全国市区地区编码表,一共3511条数据。表名是js_sys_area。mysql。

    表名是js_sys_area。 jeesite 4.x.x 的全国市区地区编码表,一共3511条数据。表名是js_sys_area。 jeesite 4.x.x 的全国市区地区编码表,一共3511条数据。表名是js_sys_area。 jeesite 4.x.x 的全国市区地区编码表,...

    js_sys_area.rar

    《JS_SYS_AREA:基于Jeesite 4.x的全国行政区划数据库脚本详解》 在IT行业中,数据管理和存储是核心部分,特别是对于涉及到地域信息的系统,全国行政区划的数据至关重要。本文将深入探讨"js_sys_area.rar"压缩包中...

    fa_area带省市区行政编码

    fastadmin 省市区fa_area表增加行政编码字段,方便通过统一行政区划代码获取该表id。 数据同步来源:2020年中华人民共和国行政区划代码。

    js_area_select.rar_area-select_area_select_area_select._js selec

    【标题】"js_area_select.rar" 是一个包含JavaScript地区选择器的压缩文件,"area-select_area_select_area_select._js selec" 可能是描述这个组件的关键字,它强调了JavaScript选择器的功能,并可能暗示了它支持...

    t_area_cn_en.rar

    在这个压缩包“t_area_cn_en.rar”中,核心文件“t_area_cn_en.sql”包含了中国所有城市的数据库表。这个表可能包含城市名称(Chinese and English)、省份信息、经纬度坐标、行政级别等关键字段,为数据分析和应用...

    sys_area.sql

    select id,name,lat,lng,pinyin from sys_area where 1=1 and `level` = 1; city 市 -- 江西 select id,name,lat,lng,pinyin from sys_area where 1=1 and `level` = 2 and find_in_set('360000',`path`); ...

    t_area.sql

    样例数据:740439 INSERT INTO `t_area` VALUES ('659004501504', '四连', '659004501000', '中国新疆维吾尔自治区自治区直辖县级行政区划五家渠市兵团一零二团', '5'); 740440 INSERT INTO `t_area` VALUES ('...

    china_area.sql

    `area_name` varchar(128) NOT NULL DEFAULT '' COMMENT '省市区名称', `parent_id` int(7) NOT NULL COMMENT '上级ID', `short_name` varchar(128) NOT NULL DEFAULT '' COMMENT '简称', `pinyin` varchar(128)...

    china_area_2.sql

    `area_id` int(11) unsigned DEFAULT '0' COMMENT '自身id', `parent_id` int(11) unsigned DEFAULT '0' COMMENT '父id', `name` varchar(255) NOT NULL, `level` tinyint(1) unsigned NOT NULL DEFAULT '0' ...

    id_card_area.zip

    标题 "id_card_area.zip" 暗示了这个压缩包包含了一个JavaScript文件,用于根据身份证号码(ID卡)获取持卡人的户籍所在地信息,具体包括省、市、县三级行政区域。描述中的“通过身份证获取省市县”进一步确认了这个...

    b_area.sql

    INSERT INTO `b_area` VALUES ('110000', '北京市', '1', '1'); INSERT INTO `b_area` VALUES ('110100', '北京市', '2', '110000'); INSERT INTO `b_area` VALUES ('110101', '东城区', '3', '110100'); INSERT ...

    sys_area.sql(最新全国省市县区乡镇)-包含完整的父子关系

    sys_area.sql(最新全国省市县区乡镇)-包含完整的父子关系

    core_area.sql

    CREATE TABLE `core_area` ( `code` varchar(12) NOT NULL DEFAULT '' COMMENT '编码', `c_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '地区名称', `jp` ...

    Calculate_closed_area.zip_Closed Area

    这里的"Calculate_closed_area.zip_Closed Area"是一个特定的程序或函数,用于计算二维平面上闭合曲线所围成的面积。这个函数有特定的规则,即它只处理沿着“逆时针”方向的曲线,不支持交叉循环,这涉及到数学上的...

    CCNA实验之ospf_multi_area

    ### CCNA实验之ospf_multi_area #### 实验目的 本次实验旨在深入了解并掌握开放式最短路径优先协议(OSPF)的基本原理与多区域配置方法。通过实践操作,熟悉OSPF的各种特性及其在网络中的实际应用,包括虚拟链接...

    地区五级fa_area.sql

    实用级搜集整理的地区五级联动mysql数据表,包含省、市、区县、乡镇、村五级,导入mysql数据库即可用,

    Two_Area_2ANN3.zip_2 AREA POWER SYSTEM_2 area_ANN Controller_two

    标题中的"Two_Area_2ANN3.zip_2 AREA POWER SYSTEM_2 area_ANN Controller_two"揭示了这个压缩包文件是关于电力系统中两个区域(Area)的应用,使用了人工神经网络(Artificial Neural Network, 简称ANN)控制器的...

Global site tag (gtag.js) - Google Analytics