首页 > 解决方案 > 输入类型号为运算符(+,-)上的事件输入返回 null

问题描述

<input>标签类型为number. 订阅了input事件

即使输入字段中有数字值,它也会""为输入值返回空字符串。+

<input type="number" value="123" id="abc"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script>
    $("#abc").on('input', function(event) {
      console.log(event.target.value);
    });
  </script>

我只需要知道为什么会发生这种行为,如果有任何在线资源解释它会非常有帮助。期望是,'123+'但它正在回归''

我从逻辑上知道返回是有意义的,''但我需要对这种行为进行解释

标签: javascripthtmlinputaddeventlistenerdom-events

解决方案


根据mdn输入类型 number 自动使不是数字的条目无效。

$("#abc").on('input', function(event) {
  console.log(event.target.value);
});
input:invalid {
  border: 1px solid red;
}

input:valid {
  border: 1px solid green;
}
<input type="number" value="123" id="abc" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>


推荐阅读