zoukankan      html  css  js  c++  java
  • textarea限制输入长度

          最近公司的项目客户在使用时报错,研究后发现,textarea输入框,输入值的长度超过了数据库中定义的长度,所以造成了,前台的错误,因此要对前台输入框的输入的长度进行限制;经过研究后发现,一下几种方法可以较好地解决问题:

     备注:其实对于数据长度的验证,我们可以在提交前,以及提交后进行验证,但是我们的这个出现问题的,由于某些原因是不能在提交后进行验证,所以我研究了下几种前台验证的方式,供以后有需要的同志参考。

    第一种:

    其实最简单的方式是:在submit提交前进行这样的if判断,不用js验证即可,而且较为直观

    if(document.getElementById("textarea的id的名字").value.length >200){
       alert您输入的字数超出限制,最多录入200个字。");
       return false;
      }

    第二种:

    <html>
        <head>
            <title>
            </title>
            <script type="text/javascript">
                var textarea_maxlen = {
                    isMax: function(max_length) {
                        var textarea = document.getElementById("area");
                        if (textarea.value.length > max_length) {
                            textarea.value = textarea.value.substring(0,max_length);
                        }
                    },
                    disabledRightMouse: function() {
                        document.oncontextmenu = function() {
                            return false;
                        }
                    },
                    enabledRightMouse: function() {
                        document.oncontextmenu = null;
                    }
                };
            </script>
        </head>
        <body>
     请输入内容:
            <br><textarea id="area"  onkeyup="textarea_maxlen.isMax(10)" onfocus="textarea_maxlen.disabledRightMouse()"
            onblur="textarea_maxlen.enabledRightMouse()" >
            </textarea>
        </body>
    </html>

    总结:这种方法在输入达到最大限制后,是无法输入进去,较为合理的解决了这样的问题

    第三种:

    <html>
    <head>
    <title>限制Textare输入数值的个数</title>
    <meta http-equiv="Content-Type"
    content="text/html; charset=gb2312" />
    <script language="JavaScript">   
    function textCounter(field, countfield, maxlimit) {   
     // 函数,3个参数,表单名字,表单域元素名,限制字符;   
     if (field.value.length > maxlimit)   
     //如果元素区字符数大于最大字符数,按照最大字符数截断;   
     fieldfield.value = field.value.substring(0, maxlimit);   
     else   
     //在记数区文本框内显示剩余的字符数;   
     countfield.value = maxlimit - field.value.length;   
    }   
    </script>
     </head>
      <body>
       <form name=myform action="">
          <textarea name="message" cols="28" rows="5"
           onKeyDown="textCounter(this.form.message,this.form.remLen,10);"
           onKeyUp="textCounter(this.form.message,
           this.form.remLen,10);">
        </textarea>
          您还可以输入:<input name="remLen" type="text" value="10" size="3" readonly="readonly">个字符 
       </form>
     </body>
    </html>

    总结:这种方法可以较为直观的显示出输入框中还能输入多少字符。

  • 相关阅读:
    Go语言学习笔记(3)
    Haskell语言学习笔记(97)Phantom Type
    Rust语言学习笔记(12)
    堆排序 Rust实现
    Rust 智能指针(Rc)
    Rust 泛型
    Rust 枚举
    Rust 结构体
    Rust 引用
    二叉搜索树
  • 原文地址:https://www.cnblogs.com/fengtengfei/p/fengtengfei.html
Copyright © 2011-2022 走看看