3

テキストボックスの入力長を 9 文字のみに設定したい。それ以上でもそれ以下でもありません。それを行う方法はありますか?どんな助けでも大歓迎です。ありがとう!

4

5 に答える 5

4

HTML5 では、pattern属性を使用してこれを行うことができます。

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

デモ

パターン属性について

于 2012-12-19T09:23:16.050 に答える
3
var ele = document.getElementById("textboxId");
if (!(ele.value.length==9)){
  //throw validation error
}

http://jsfiddle.net/e9hGv/

于 2012-12-19T09:19:46.443 に答える
3

入力で minlength 属性と maxlength 属性を同じ値に設定できます。

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

デフォルトでは、ブラウザーは最初の 9 文字のみを考慮し、それ以上入力できないようにします。パターンを使用すると、必要なだけ入力できますが、検証は失敗します。また、検証メッセージのユーザー エクスペリエンスが向上します。

minlength と maxlength:

このテキストを 9 文字以上にしてください (現在 8 文字を使用しています)。

パターン:

要求された形式に一致させてください。

于 2018-02-25T12:31:03.620 に答える
1

入力の場合は attribute を使用できますmaxlength=9。もちろん、この場合は 9 未満でもかまいませんが、それを検証して 9 未満でフォームを送信してエラーを表示しないようにすることをお勧めします。

それがテキストエリア要素の場合、それを行うにはjavascriptが必要です

于 2012-12-19T09:19:35.813 に答える
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>

このコードを使用してソリューションを取得してください。

于 2012-12-19T10:10:31.700 に答える