如何使密码输入仅接受HTML中的数字?

时间:2019-07-02 19:12:06

标签: html

我有这个输入

 [DataType(DataType.Password)]
 public int Pin

<input asp-for="Pin" Pattern="[1-9]+" />

但是它仍然可以让我输入字母

2 个答案:

答案 0 :(得分:1)

我个人只是使​​用密码输入字段,然后使用JavaScript阻止添加所有非数字输入。

这是一个例子:

document
  .getElementById("numeric_input")
  .addEventListener("keypress", function(evt) {
  if (evt.which < 48 || evt.which > 57) {
    evt.preventDefault();
  }
});

https://jsbin.com/nepuzohese/3/edit?html,js,console,output

答案 1 :(得分:0)

pattern attribute 验证表单提交中的输入,但在键入时不会强制

  

基本HTML表单验证功能将导致如果您提交的表单中没有有效填写的内容或与pattern不匹配的值,则会产生默认错误消息。