设置输入文本的固定长度

时间:2012-12-19 09:17:55

标签: javascript html input

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

5 个答案:

答案 0 :(得分:3)

var ele = document.getElementById("textboxId");
if (!(ele.value.length==9)){
  //throw validation error
}

http://jsfiddle.net/e9hGv/

答案 1 :(得分:3)

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

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

<强> Demo

<强> About pattern attribute

答案 2 :(得分:1)

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

如果它是textarea元素,你需要javascript才能做到这一点

答案 3 :(得分:1)

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

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

开箱即用的浏览器只会考虑前9个字符并阻止您输入更多字符。使用模式,您可以根据需要键入任何数量,但验证将失败。此外,验证消息具有更好的用户体验:

minlength和maxlength:

  

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

<强>图案:

  

请匹配所要求的格式。

答案 4 :(得分:0)

这是示例 -

<!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>

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