如何指定用户必须插入输入字段的确切位数?

How can I specify the exact number of digits that an user have to insert into an input field?

我是 HTML5 的新手,遇到以下问题。在一个页面中,我有一个这样的输入标签:

<input id="codiceFiscaleEnte" class="form-control" name="numeroProtocollo" type="number" th:value="*{codiceFiscaleEnte}" required="required"></input>

我必须对其进行一些验证。

所以我知道 required="required" 属性意味着用户必须为此字段插入一个值并且 type= "number"指定这个值必须代表一个数字。

现在我的问题是:我可以用某种方式指定这个数字必须由 11 位数字组成吗?我如何使用 HTML5 属性来做到这一点?

使用模式:

<input type="text" name="numeroProtocollo" required pattern="[0-9]{11}">

它只允许最小和最大长度为 11 的数字

测试一下:

https://jsfiddle.net/oegjdszx/1/

像这样使用pattern

<input pattern="[0-9]{5}">

其中 5 是您想要的位数。

<input type="number" min="10000000000" max="99999999999" required>

minmax 属性指定最小和最大有效值。 11 位数字是 10^10 和 (10^11 - 1) 之间的数字,因此将最小值和最大值设置为这些值