文本框文字个数输入提示DEMO


在需要判断的时候触发 T.doCheckLen('ti1', 'to1', 1, 50) 即可!

参数说明: T.doCheckLen('ti1', 'to1', 1, 50)
ti1 即需要捕捉的文本框文字的id
to1 即需要返回数字的id
1 1:提示文本框还能输入多少个字 2:提示文本框已经输入了多少个字
50 如果上面一个参数为1,则可以省略,否则填写,你想控制的文字个数

以上参数只是示例,根据自己的需要,自行替换!

 

 

附源码:格式贴进来就变了,自行调整一下吧,我也懒得调了

 

 <html>
<head>
<title>文本框文字输入提示DEMO</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script>
 //js Obj
 var textLenObject = function(){
  var strTid = '';
  var strSid = '';
  var intLen = 0;

  //get Obj by id
  var getObj = function(id){
   return document.getElementByIdx_x_x_x_x_x_x(id);
  }

  //get the area length
  var getValueLen = function(){
   var strArea = getObj(strTid).value;
   return getSLen(strArea);
  }
  
  //count len by string
  var getSLen = function len(s){
   var l = 0;
   var a = s.split("");
  
   for(var i=0;i<a.length;i++){
    if(a[i].charCodeAt(0)<299){
     l++;
    }else{
     l+=2;
    }
   }
   return l;
  }

  //show the msg
  var showMsg = function(intTemp){
   var objShow = getObj(strSid);
   objShow.innerHTML = intTemp; 
  }

  //Process
  var doProcess = function(intOpe){
   var intSLen = getValueLen();
   var intRLen = 0;

   intRLen = intOpe == 1 ? intLen - intSLen : intSLen;
   if(intRLen < 0) alert('不能再输入任何文字!');
   else showMsg(intRLen);
  }
  
  return{
   doCheckLen:function(strIid1, strId2, intOpe, intTLen){
    strTid = strIid1;
    strSid = strId2;
    intLen = intTLen;
    doProcess(intOpe);  
   },
   doTest:function(){
    alert('Current object is ok!');
   }
  }
 };
 var T = new textLenObject();
</script>
</head>
<body>
*********************************************************************************<br/>
情况一:提示文本框还能输入多少个字<br/>
<textarea rows="5" cols='60' tabindex="4" οnkeyup="T.doCheckLen('ti1', 'to1', 1, 50);" id='ti1'></textarea><br/><br/>
您还可以输入&nbsp;<font id='to1' color='red'>50</font>&nbsp;个字<br/>

*********************************************************************************<br/>
情况二:提示文本框已经输入了多少个字<br/>
<textarea rows="5" cols='60' tabindex="4" οnkeyup="T.doCheckLen('ti2', 'to2', 2);" id='ti2'></textarea><br/><br/>
您已经输入了&nbsp;<font id='to2' color='red'>0</font>&nbsp;个字<br/>
*********************************************************************************<br/>
使用方法说明:<br/>
在需要判断的时候触发 T.doCheckLen('ti1', 'to1', 1, 50)  即可!
<br/><br/>
参数说明:
T.doCheckLen('ti1', 'to1', 1, 50)
<br/>ti1 即需要捕捉的文本框文字的id
<br/>to1 即需要返回数字的id
<br/>1  1:提示文本框还能输入多少个字  2:提示文本框已经输入了多少个字
<br/>50  如果上面一个参数为1,则可以省略,否则填写,你想控制的文字个数
<br/><br/>
以上参数只是示例,根据自己的需要,自行替换!
</body>
</html>

<html>
<head>
<title>文本框文字输入提示DEMO</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script>
 //js Obj
 var textLenObject = function(){
  var strTid = '';
  var strSid = '';
  var intLen = 0;

  //get Obj by id
  var getObj = function(id){
   return document.getElementByIdx_x_x_x_x_x_x(id);
  }

  //get the area length
  var getValueLen = function(){
   var strArea = getObj(strTid).value;
   return getSLen(strArea);
  }
  
  //count len by string
  var getSLen = function len(s){
   var l = 0;
   var a = s.split("");
  
   for(var i=0;i<a.length;i++){
    if(a[i].charCodeAt(0)<299){
     l++;
    }else{
     l+=2;
    }
   }
   return l;
  }

  //show the msg
  var showMsg = function(intTemp){
   var objShow = getObj(strSid);
   objShow.innerHTML = intTemp; 
  }

  //Process
  var doProcess = function(intOpe){
   var intSLen = getValueLen();
   var intRLen = 0;

   intRLen = intOpe == 1 ? intLen - intSLen : intSLen;
   if(intRLen < 0) alert('不能再输入任何文字!');
   else showMsg(intRLen);
  }
  
  return{
   doCheckLen:function(strIid1, strId2, intOpe, intTLen){
    strTid = strIid1;
    strSid = strId2;
    intLen = intTLen;
    doProcess(intOpe);  
   },
   doTest:function(){
    alert('Current object is ok!');
   }
  }
 };
 var T = new textLenObject();
</script>
</head>
<body>
*********************************************************************************<br/>
情况一:提示文本框还能输入多少个字<br/>
<textarea rows="5" cols='60' tabindex="4" οnkeyup="T.doCheckLen('ti1', 'to1', 1, 50);" id='ti1'></textarea><br/><br/>
您还可以输入&nbsp;<font id='to1' color='red'>50</font>&nbsp;个字<br/>

*********************************************************************************<br/>
情况二:提示文本框已经输入了多少个字<br/>
<textarea rows="5" cols='60' tabindex="4" οnkeyup="T.doCheckLen('ti2', 'to2', 2);" id='ti2'></textarea><br/><br/>
您已经输入了&nbsp;<font id='to2' color='red'>0</font>&nbsp;个字<br/>
*********************************************************************************<br/>
使用方法说明:<br/>
在需要判断的时候触发 T.doCheckLen('ti1', 'to1', 1, 50)  即可!
<br/><br/>
参数说明:
T.doCheckLen('ti1', 'to1', 1, 50)
<br/>ti1 即需要捕捉的文本框文字的id
<br/>to1 即需要返回数字的id
<br/>1  1:提示文本框还能输入多少个字  2:提示文本框已经输入了多少个字
<br/>50  如果上面一个参数为1,则可以省略,否则填写,你想控制的文字个数
<br/><br/>
以上参数只是示例,根据自己的需要,自行替换!
</body>
</html>

转载于:https://my.oschina.net/meSpace/blog/41884

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值