九、js实时统计输入的字节数
1、js对输入字节数进行实时统计:输入的字节数不允许超过500 1.1 字节数统计: function byteLengthCount(varString){ var len = 0; for(var i=0; i<varString.length; i++) { //方法用于返回一个从指定位置开始的指定长度的子字符串。 var c = varString.substr(i,1); //escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。 var ts = escape(c); //substring 方法用于提取字符串中介于两个指定下标之间的字符 if(ts.substring(0,2) == "%u") { len+=2;//表示一个汉子占2个字节 } else { len+=1; } } return len; } 备注:可以通过 len+=2;对一个汉子占几个字节进行调整 1.2 html显示 <td> <textarea id="otherDesc" name="otherDesc" rows='5'><c:out value='${actionDescList.otherDesc}'/></textarea> <div id="result" align="right">您还可以输入500字节</div> </td> 1.3 实时计算 var length = 500; //去掉左右空格 function trim(s){ return s.replace(/(^\s*)|(\s*$)/g, ""); } function otherDescLengthTest(){ var otherDesclength=trim(byteLengthCount($("#otherDesc").val())); var updateAuditlength=trim(byteLengthCount($("#updateAudit").val())); var content_len=updateAuditlength; var in_len = length-content_len; // 当用户输入的字数大于制定的数时,进行提示 if(in_len >=0){ $("#result").html('您还可以输入'+in_len+'字节'); }else{ checkResult=false;//表示不允许提交 alert("...字段超长,请您重新进行修改!"); $("#result").html('您还可以输入'+in_len+'字节'); } }; //keyup() 方法触发 keyup事件(即按钮被松开时),或规定当发生 keyup 事件时运行的函数 $("#otherDesc").keyup(function(){ otherDescLengthTest(); }); 备注:是否允许提交 onsubmit="return checkNull();" 默认值为true
细水长流,打磨濡染,渐趋极致,才是一个人最好的状态。