提示text还能输入多少字节

1.添加jQuery自定义扩展

$(function($){
    // tipWrap:   提示消息的容器
    // maxNumber:   最大输入字符
    $.fn.artTxtCount = function(tipWrap, maxNumber){
        var countClass = ‘js_txtCount‘,   // 定义内部容器的CSS类名
        fullClass = ‘js_txtFull‘,   // 定义超出字符的CSS类名
        disabledClass = ‘disabled‘;   // 定义不可用提交按钮CSS类名
        // 统计字数
        var count = function(){
            var val = lenFor($.trim($(this).val()));
            if (val <= maxNumber){
              tipWrap.html(‘<span class="‘ + countClass + ‘">\u8FD8\u80FD\u8F93\u5165 <strong>‘ + (maxNumber - val) + ‘</strong> \u4E2A\u5B57\u8282</span>‘);
            }else{
              tipWrap.html(‘<span class="‘ + countClass + ‘ ‘ + fullClass + ‘">\u5DF2\u7ECF\u8D85\u51FA <strong>‘ + (val - maxNumber) + ‘</strong> \u4E2A\u5B57\u8282</span>‘);
            };
        };
        $(this).bind(‘keyup change‘, count);
        return this;
    };
});

获取字节数函数

var lenFor = function(str){
  var byteLen=0,len=str.length;
  if(str){
    for(var i=0; i<len; i++){
      if(str.charCodeAt(i)>255){
        byteLen += 3;
      }
      else{
        byteLen++;
      }
    }
    return byteLen;
  }
  else{
    return 0;
  }
}

2.实例化

<script type="text/javascript">
// demo
$(function($){
    // 批量
    $(‘.autoTxtCount‘).each(function(){
        $(this).find(‘.text1‘).artTxtCount($(this).find(‘.tips‘), 108);
    });
});
</script>

3.相应的html结构

<div class="form-group">
                    <div class="col-sm-9">
                        <label class="col-sm-1 control-label" for="form-field-1"> 内容: </label>
                    </div>
                </div>

                <div style="padding-left:100px;" id="autoTxtCount" class="autoTxtCount form-group">
                    <div >
                        <textarea class="text1" name="content"  cols="50" rows="3"><!--{$aData.content}--></textarea>
                    </div>
                    <div>
                        <span class="tips"></span>
                    </div>
                </div>

4.一些样式

    #autoTxtCount { width:500px; }
    #autoTxtCount .help, #autoTxtCount .help a { color:#999; }

    #autoTxtCount .tips { color:#999; padding:0 5px; }
    #autoTxtCount .tips strong { color:#1E9300; }
    #autoTxtCount .tips .js_txtFull strong { color:#F00; }
    #autoTxtCount textarea.text1 { width:474px; }

效果如下:

时间: 2024-11-29 07:01:49

提示text还能输入多少字节的相关文章

ASP.NET 仿腾讯微博提示“还能输入*个字符”的实现

textbox如果设置TextMode="MultiLine"则 它的MaxLength设置的值就无效:为了能达到像腾讯微薄.新浪微薄那样的提示的效果(腾讯和新浪微薄文本框用到的应该是textarea),尝试如果不考虑用鼠标操作粘贴.删除textbox的内容,用jquery的keyup和keydown能实现,下面是实现的一个技巧,用到了js的计时器(当焦点在textbox中则“开启”计时器,失去焦点则“关闭”计时器),很好的解决了鼠标操作粘贴.删除textbox的内容不能改变字符个数的

textarea提示还能输入多少字

//搜集的网上资源 这个是判断字符的,如果是判断汉字,需要根据你网页的编码来计算. 如果是GBK\GB2312编码,2个字节=1个汉字 如果是unicode\utf-8编码,里面汉字是长度不是一定的,有的长.有的短,2-4=1个汉字 <textarea name="content" id="content" style="width:345px;height:120px;"></textarea><div id=&q

文本框textarea实时提示还可以输入多少文字

<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=gbk" /><title>insert title</title><style type="text/css"></style></head><body>

Jquery 提示还可以输入的字数,将多余的字数截取掉

js代码: $(function () { var counter = $("#divform textarea").val().length; //获取文本域的字符串长度 $("#gptu var").text(289 - counter); $(document).keyup(function () { var text = $("#divform textarea").val(); var counter = text.length; if

jQuery实现TEXT文本框输入时的提示信息(谷歌百度淘宝搜索框提示实现)

在搜索框中,输入之前框内有输入的提示信息,文本框获得焦点后会自动消失的效果,效果图如下: 鼠标放在文本框时的效果: 创建工具类(已经存在就不用创建了)Util.js(DWR的JS) 在里面添加如下方法: Js代码 /** * Input框里的灰色提示,使用前先引入jquery * <br>使用方法:<input type="text" tipMsg="您的用户名"   /> * * @return */ function inputTipTe

JS实现动态提示文本框可输入剩余字数(类似发表微博数字提示)

一.实现效果: 为了更直观的体现用户在文本框输入文本时能看到自己输入了多少字,项目中需要通过判断提示文本框剩余可输入字数. html & JS: 1 <div> 2 <textarea name="content" id="content" onkeyup="javascript:checkWords(this);" onmousedown="javascript:checkWords(this);"

jQuery实现还能输入N字符

页面: <table cellpadding="0" cellspacing="0" border="0" width="100%">                        <tr>                            <td>                                <textarea name="" id=&quo

用jquery判断输入框还可以输入多少字

效果 全部代码,粘贴可用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&

还能输入多少字?(JS动态计算)

<div class="m-form ovh"> <div class="hd"> <span class="fr" id="message">还能输入200个字</span> 我要说: <select name="select" id="select"> <option value="12">北