控制多行文本框输入长度

控制多行文本框输入长度

ID:19846508

大小:32.50 KB

页数:8页

时间:2018-10-06

控制多行文本框输入长度_第1页
控制多行文本框输入长度_第2页
控制多行文本框输入长度_第3页
控制多行文本框输入长度_第4页
控制多行文本框输入长度_第5页
资源描述:

《控制多行文本框输入长度》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、控制多行文本框输入的长度最近做项目时,遇到要控制多行文本框输入内容的长度问题,假如长度限制在1000以内,如果是单行的话,设置下maxlength属性就OK了,但对于多行文本框来说就不起作用了。怎么办呢,只能利用脚本来控制了。在网上搜了点资料,查到了相关的JS函数,比较凌乱,用起来也不太方便,主要是触发了以下几个事件!1、onkeypress,2、onkeydown,3、onbeforepaste,4、onpaste均用来验证输入或者粘贴内容的长度是不是已经超过限制,如果是的话,就取消当前的操作。但是这此方法都要在文本框的HT

2、ML语言中一一写入相应的触发事件,代码多且用起来也不方便。所以就想起来把这些函数封装成一个JS类,不就好了么。下面就是普通的JS类的完整代码://以下是封装好的JS类。正确的验证多行文本框的长度问题在这里涉及到JS类和函数体对this的使用问题,也就是在javascript中的this指针的用法。//javascript普通类的写法//////////////////////////////functionareaJS(){//javascript中的this的用法this.maxLength;this.element;var

3、parentThis=this;//指向的是areaJSthis.Init=function(varMaxLenth,varID){parentThis.maxLength=varMaxLenth;parentThis.element=document.all[varID];parentThis.element.attachEvent("onkeypress",parentThis.doKeypress);parentThis.element.attachEvent("onkeydown",parentThis.doKeydo

4、wn);parentThis.element.attachEvent"onbeforepaste",parentThis.doBeforePaste);parentThis.element.attachEvent("onpaste",parentThis.doPaste);};this.doKeypress=function(){if(!isNaN(parentThis.maxLength)){parentThis.maxLength=parseInt(parentThis.maxLength);varoTR=parentTh

5、is.element.document.selection.createRange();if(oTR.text.length>=1)event.returnValue=true;elseif(parentThis.element.value.length>parentThis.maxLength-1)event.returnValue=false;}};this.doKeydown=function(){setTimeout(function(){parentThis.maxLength=parseInt(parentThis

6、.maxLength);if(!isNaN(parentThis.maxLength)){if(parentThis.element.value.length>parentThis.maxLength-1){//超过了指定的范围,则重新定位开始的位置,并清空。//比如oTR="123456";而我们只能输入4位,则oTR.moveStart("character",-1*(6-4))--->oTR.moveStart("character",-2)移去2位,就剩下“1234”varoTR=window.document.sel

7、ection.createRange();oTR.moveStart("character",-1*(parentThis.element.value.length-parentThis.maxLength))oTR.text="";}}},1)};this.doBeforePaste=function(){if(!isNaN(parentThis.maxLength))//如果为真的话,就执行源对象上的操作,否则取消源对象上的操作event.returnValue=false;};this.doPaste=function(

8、){if(!isNaN(parentThis.maxLength)){event.returnValue=false;parentThis.maxLength=parseInt(parentThis.maxLength);varoTR=parentThis.element.d

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。