控制评论输入的字符数(中文一个算两个字符)

<asp:TextBox ID="txtReplyContent" runat="server" TextMode="MultiLine" ClientIDMode="Static"                                         class="textarea_style" onkeydown="textCounter(250);" onkeyup="textCounter(250);" onpaste="txtOnpasteCount(250)"></asp:TextBox>

//控制评论的字数 function textCounter(maxlimit) {     var message = $("#txtReplyContent").val();     if (message != null) {         var templen = message.length;         //折合成中文长度         var strLen = Math.round(getBytesLength(message) / 2);         if (strLen > maxlimit) {             alert(strLen);             $("#txtReplyContent").val(message.toString().substring(0, templen-1));         }         else {             var len = maxlimit - strLen;             $("#StrLength").html(len);         }     } }

function txtOnpasteCount(maxlimit) {     var paste = clipboardData.getData('Text');     var pastelen = Math.round(getBytesLength(paste) / 2);     var message = $("#txtReplyContent").val().toString();     if (message != null) {         //折合成中文长度         if (pastelen > 0) {             var str = "";             var index = 0;             var strLen = message.length;             if (strLen == 0) {                 str = paste;                 index = pastelen;                 while (index > maxlimit) {                     str = str.substring(0, str.length - 1);                     index = Math.round(getBytesLength(str) / 2);                 }                 clipboardData.setData("Text", str);                 $("#StrLength").html("0");             }             else {                 strLen = Math.round(getBytesLength(message) / 2);                 if (strLen + pastelen > maxlimit) {                     str = paste;                     index = pastelen;                     while (index > maxlimit - strLen) {                         str = str.substring(0, str.length - 1);                         index = Math.round(getBytesLength(str) / 2);                     }                     clipboardData.setData("Text", str);                     $("#StrLength").html("0");                 }             }         }         else {             var len = maxlimit - strLen;             $("#StrLength").html(len);         }     } } function getBytesLength(str) {     return str.replace(/[^\x00-\xff]/g, 'xx').length; }

posted @ 2011-12-27 10:15  soulfree  阅读(170)  评论(0)    收藏  举报