为什么输入数字中的模式不起作用,当我写1.1
,1,1
时出现服务器错误,因为在mvc控制器方法中我应该采用int
类型
<input type="number" name="Quantity" min="1" title="Пожалуйста, введите количество" placeholder="кол-во" pattern="\d+" required />
所需的工作权利。
如何使模式仅具有整数值?
答案 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;" />
它不允许用户对除整数以外的其他任何东西进行编码。