zoukankan      html  css  js  c++  java
  • 编程经验:JavaScript限制textarea/textbox输入长度

    前台:

    <asp:TextBox  ID="txtText" runat="server" TextMode="MultiLine" Width="95%" Rows="4" CssClass="txtBoxBreak" ></asp:TextBox>

     

    文本框限制长度,应该要从本质上限制(就是但输入超过maxlength就不让输入),而不是仅仅提示(还需要用户去数超过多少,然后删除),这是非常不友好的。

     

    传统限制长度方法:

    1、此方法只是超过一定长度弹出一个提示而已,不是很友好

    txtText.Attributes.Add("onblur", "javascript:MaxLength(this," + value.ToString() + ",'输入内容超出限定长度:');");

    2、此方法满足了动态限制长度,但是文本内容不能修改,方向键无效等等缺点

    txtText.Attributes.Add("onkeydown", "if(this.value.length   >  " + value.ToString() + "); this.value   =   this.value.substr(0," + value.ToString() + ");"); txtText.Attributes.Add("onkeyup", "if (this.value.length   > " + value.ToString() + "); this.value   =   this.value.substr (0," + value.ToString() + ");");

     

    改良方法:

    txtText.Attributes.Add("onkeyup", "return isMaxLen(this)");

    txtText.Attributes.Add("maxlength", value.ToString());

     

    <script type="text/javascript"> 

    function isMaxLen(o){

        var nMaxLen = o.getAttribute ? parseInt(o.getAttribute("maxlength")) : ""; 

     if(o.getAttribute && o.value.length>nMaxLen){ 

     o.value=o.value.substring(0,nMaxLen) 

     } 

    } 

    </script> 

     

     

    maxlength=10

    <SC&#114IPT t&#121pe='"text/javascript"'>function isMaxLen(o){ var nMaxLen=o.getAttribute? parseInt(o.getAttribute("maxlength")):""; if(o.getAttribute && o.value.length>nMaxLen){ o.value=o.value.substring(0,nMaxLen) } }

  • 相关阅读:
    MySQL如何把varchar类型字段转换成int类型进行倒叙排序
    MySQL如何使用WITH ROLLUP函数
    MySQL数据库行转列
    SQLserver数据库如何使用SQL语句查看数据库版本
    MySQL数据库如何使用SQL语句查看数据库版本
    js刷新页面
    asp.net core控制器方法返回输出
    asp.net mvc在页面显示HTML字符串
    Convert.ToString()
    三种通信方式 转载
  • 原文地址:https://www.cnblogs.com/Gemgin/p/3136291.html
Copyright © 2011-2022 走看看