模式在输入数字中不起作用?

时间:2019-03-12 13:51:52

标签: html regex html5

为什么输入数字中的模式不起作用,当我写1.11,1时出现服务器错误,因为在mvc控制器方法中我应该采用int类型

<input type="number" name="Quantity" min="1" title="Пожалуйста, введите количество" placeholder="кол-во" pattern="\d+" required />

所需的工作权利。

如何使模式仅具有整数值?

2 个答案:

答案 0 :(得分:0)

尝试\d+([.,]\d+)?

“数字,可能后跟.,和更多数字”。

答案 1 :(得分:0)

您必须使用javascript,因为输入内容包含“ 1.1”或“ 1”,而不是1.1或1。否则,您可以在控制器中将字符串转换为int。

在JS中,您可以使用parseInt(number,base),例如

let i = "42.5243";

let j = parseInt(i);
console.log(j); // 42

编辑带有注释的代码段:

<input type="number" name="Quantity" title="Пожалуйста, введите количество" placeholder="кол-во" pattern="\d+" required oninput="validity.valid ? this.save = value : value = this.save;" />

它不允许用户对除整数以外的其他任何东西进行编码。