• 精确控制输入框的中英文输入字数


        <script language="javascript" type="text/javascript">
        <!--
       
    function limitLength(value, byteLength, attribute)
    {
           var newvalue = value.replace(/[^\x00-\xff]/g, "**");
           var length = newvalue.length;
     
           //当填写的字节数小于设置的字节数
          if (length * 1 <=byteLength * 1)
          {
                return;
          }
          var limitDate = newvalue.substr(0, byteLength);
          var count = 0;
          var limitvalue = "";
         for (var i = 0; i < limitDate.length; i++)
         {
                 var flat = limitDate.substr(i, 1);
                if (flat == "*")
                 {
                      count++;
                }
         }
         var size = 0;
         var istar = newvalue.substr(byteLength * 1 - 1, 1);//校验点是否为“×”
      
        //if 基点是×; 判断在基点内有×为偶数还是奇数 
         if (count % 2 == 0)
         {
                  //当为偶数时
                size = count / 2 + (byteLength * 1 - count);
                limitvalue = value.substr(0, size);
        }
         else
        {
                //当为奇数时
                size = (count - 1) / 2 + (byteLength * 1 - count);

            limitvalue = value.substr(0, size);
        }
        alert("最大输入" + byteLength + "个字节(相当于"+byteLength /2+"个汉字)!");
        document.getElementById(attribute).value = limitvalue;
        //document.getElementById("msg").innerHTML= byteLength;
       return;
    }

       
        //-->
        </script>

    <asp:TextBox runat="server" ID="txtComment" Height="77px"
                ontextchanged="txtComment_TextChanged" TextMode="MultiLine" Width="307px"></asp:TextBox>
                <textarea runat="server" cols="50" rows="10" name="explain" id="explain"></textarea>

    在后台page_load中加入:

     explain.Attributes["onpropertychange"] = "limitLength(this.value,10,'explain')";

    完整的页面前台代码是:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="cc1" %>

    <!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 runat="server">
        <title>DropdownList</title>
        <script language="javascript" type="text/javascript">
        <!--
    function limitLength(value, byteLength, attribute)
    {
           var newvalue = value.replace(/[^\x00-\xff]/g, "**");
           var length = newvalue.length;
     
           //当填写的字节数小于设置的字节数
          if (length * 1 <=byteLength * 1)
          {
                return;
          }
          var limitDate = newvalue.substr(0, byteLength);
          var count = 0;
          var limitvalue = "";
         for (var i = 0; i < limitDate.length; i++)
         {
                 var flat = limitDate.substr(i, 1);
                if (flat == "*")
                 {
                      count++;
                }
         }
         var size = 0;
         var istar = newvalue.substr(byteLength * 1 - 1, 1);//校验点是否为“×”
      
        //if 基点是×; 判断在基点内有×为偶数还是奇数 
         if (count % 2 == 0)
         {
                  //当为偶数时
                size = count / 2 + (byteLength * 1 - count);
                limitvalue = value.substr(0, size);
        }
         else
        {
                //当为奇数时
                size = (count - 1) / 2 + (byteLength * 1 - count);

            limitvalue = value.substr(0, size);
        }
        alert("最大输入" + byteLength + "个英文(或"+byteLength /2+"个汉字)!");
        document.getElementById(attribute).value = limitvalue;
        //document.getElementById("msg").innerHTML= byteLength;
       return;
    }

       
        //-->
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
       
                <textarea runat="server" cols="50" rows="10" name="explain" id="explain"></textarea>

        </form>
           
        </body>
    </html>

  • 相关阅读:
    Run keyword if
    sublime Text如何取消两栏窗口?
    WIN7右键在目录当前打开命令行Cmd窗口
    电脑用HDMI线分屏后,耳机或音箱没声音之完美解决!
    如何解决failed to load the jni shared library问题
    APP测试点
    PHP 根据ip判断其所属地址
    thinkPHP git上传的时候,总是有些文件传不上去,.gitignore解析
    Integrity constraint violation: 1052 Column 'status' in where clause is ambiguous
    tp5导出生成pdf
  • 原文地址:https://www.cnblogs.com/chinafine/p/1257237.html
Copyright © 2020-2023  润新知