Chrome清除输入类型=数字

时间:2015-12-04 18:34:34

标签: html5 google-chrome

在最新版本"47.0.2526.73"中,每次我们尝试输入浮点数type="number"

时,我的所有输入example : 1.1都会清除

这些输入在jQuery中有一个keyup事件处理程序,用于删除前导零。

此代码在最新更新之前正在运行。

有错误吗?

- 更新 -

//Fix to leading zero decimals
$('input[type=number]').keyup(function (e) {
   if (!this.value && (e.keyCode == 190 || e.keyCode == 110)) {
      this.value = '0.';
   }
});

这是不再有效的代码

2 个答案:

答案 0 :(得分:0)

更改步骤,使其不使用默认值“1”并使用浮点数。它允许您使用浮点数而不仅仅是整数。 例如:'0.1'

答案 1 :(得分:0)

看起来chrome不再允许您在小数点输入的中间使用keyup事件读取/设置数字类型的输入值。

这是当用户输入'。'时,您无法获得值' 1。'或者在事件中以相同的方式设置它。

我所做的是将逻辑改为:

$('input[type=number]').keyup(function (e) {
   if (this.value) {
      if (this.value.charAt(0) == '.')
      {
         this.value = '0' + this.value;
      }
   }
});

这是我找到修复输入数字而没有输入框中前导零的数字的唯一方法