zoukankan      html  css  js  c++  java
  • jQuery自动截取文字长度,超过部分

    <html>
    <head>
        <meta charset="utf-8">
        <script src="js/jquery-1.11.0.js"></script>
        


    <script type="text/javascript"> 
    //返回val的字节长度 
    function getByteLen(val) { 
    var len = 0; 
    for (var i = 0; i < val.length; i++) { 
    if (val[i].match(/[^x00-xff]/ig) != null//全角 
    len += 2; 
    else 
    len += 1; 

    return len; 

    //返回val在规定字节长度max内的值 
    function getByteVal(val, max) { 
    var returnValue = ''; 
    var byteValLen = 0; 
    for (var i = 0; i < val.length; i++) { 
    if (val[i].match(/[^x00-xff]/ig) != null
    byteValLen += 2; 
    else 
    byteValLen += 1; 
    if (byteValLen > max) 
    break
    returnValue += val[i]; 

    return returnValue; 

    $(function() { 
    var _area = $('textarea#txtPrizeNote'); 
    var _info = _area.next(); 
    var _max = _area.attr('maxlength'); 
    var _val; 
    _area.bind('keyup change', function() { //绑定keyup和change事件 
    if (_info.find('span').size() < 1) {//避免每次弹起都会插入一条提示信息 
    _info.append(_max); 

    _val = $(this).val(); 
    _cur = getByteLen(_val); 
    if (_cur == 0) {//当默认值长度为0时,可输入数为默认maxlength值 
    _info.text(_max); 
    else if (_cur < _max) {//当默认值小于限制数时,可输入数为max-cur 
    _info.text(_max - _cur); 
    else {//当默认值大于等于限制数时 
    _info.text(0); 
    $(this).val(getByteVal(_val,_max)); //截取指定字节长度内的值 

    }); 
    }); 
    </script

        
    </head>
    <body>

    <div> 
    <textarea id="txtPrizeNote" runat="server" height="74px" width="480px" maxlength="10" 
    style=" 480px; height: 74px; float: left"></textarea> 
    <span style="color: Red;">*</span><br /> 
    剩余字数:<span id="showmsg" style="color: red"></span> 
    </div> 
    </body>
    </html>//搜索字符限制

    第二种

      

    //超出的文字自动+省略号  

              jQuery.fn.limit=function(){  
                    var self = $("*[limit]");  
                 self.each(  
                     function(){  
                      var objString = $.trim($(this).text());  
                      var objLength = $.trim($(this).text()).length;  
                      var num = $(this).attr("limit");  
                      if(objLength > num){  
                                $(this).attr("title",objString);  
                       objString = $(this).text(objString.substring(0,num) + "..");  
                      }  
                     }  
                 );  
                };  
    $("*[limit]").limit();


  • 相关阅读:
    BZOJ 1036 树的统计
    codevs 4712 gcd与lcm问题
    codevs 1574 矩阵乘法
    Python定时任务框架APScheduler
    PHP集成支付宝快速实现充值功能
    玩转Web之easyui(二)-----easy ui 异步加载生成树节点(Tree),点击树生成tab(选项卡)
    玩转Web之easyui(一)-----easy ui datagird 分页
    Android访问服务器(TOMCAT)乱码引发的问题
    工厂方法模式--结合具体例子学习工厂方法模式
    简单工厂模式--结合实例学习简单工厂模式
  • 原文地址:https://www.cnblogs.com/daniell003/p/3566285.html
Copyright © 2011-2022 走看看