【问题标题】:Set Fixed length of input text设置输入文本的固定长度
【发布时间】:2012-12-19 09:17:55
【问题描述】:

我只想将文本框的输入长度设置为 9 个字符。不多也不少。有什么办法吗?任何帮助将不胜感激。谢谢!

【问题讨论】:

  • javascript 验证将帮助您
  • 你想要什么like this

标签: javascript html input


【解决方案1】:

使用 HTML5,您可以使用 pattern 属性来执行此操作:

<input type="text" pattern=".{9}" required name="patternTest" title="Field must be 9 characters long" />

Demo

About pattern attribute

【讨论】:

    【解决方案2】:
    var ele = document.getElementById("textboxId");
    if (!(ele.value.length==9)){
      //throw validation error
    }
    

    http://jsfiddle.net/e9hGv/

    【讨论】:

    • 我正在使用验证描述符,我尝试了使用 minlen 和 maxlen 的解决方法,无论如何,谢谢!非常感谢您!仍然不能投票。 :)
    【解决方案3】:

    您可以在输入中将 minlength 和 maxlenght 属性设置为相同的值。

    <input type="text" minlength="9" maxlength="9">
    

    开箱即用,浏览器只会考虑前 9 个字符,并阻止您输入更多字符。使用模式,您可以输入任意数量的内容,但验证将失败。验证消息也有更好的用户体验:

    最小长度和最大长度:

    请将此文本延长至 9 个字符或更多(您目前 使用 8 个字符)。

    模式:

    请匹配请求的格式。

    【讨论】:

      【解决方案4】:

      如果是输入你可以使用属性maxlength=9,当然在这种情况下你可以少于9,但是最好验证它并且不要发送少于9的表单并显示错误。

      如果它是一个 textarea 元素,则需要 javascript 来执行此操作

      【讨论】:

        【解决方案5】:

        这是一个例子-

        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
          <%@ page contentType="text/html;charset=windows-1252"%>
        <html>
         <head>
           <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"/>
          <title>index</title>
        
          </head>
          <body>
        
         <script type="text/javascript">
        
           function chkpassword() {
        
            var p1 = document.getElementById("pass").value;
            var min = 9
            if(p1.length == min) {
                alert('ok')
            } else{
               alert(":( The password must be at least 9 characters long.");
            }
        
             }
        
          </script>
        
              <input type=text id=pass name=pass value="" style='width:245px'  >  
              <input type=button id=btnOk name=btnOk value="OK" onclick='chkpassword()' />
               </body>
              </html>
        

        使用此代码获取您的解决方案。

        【讨论】:

        • 欢迎来到 Stack Overflow!您是否会考虑添加一些叙述来解释为什么此代码有效,以及是什么使它成为问题的答案?
        猜你喜欢
        • 1970-01-01
        • 2011-07-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-15
        • 2021-11-09
        • 1970-01-01
        • 2019-03-16
        相关资源
        最近更新 更多