繁体   English   中英

你可以在输入类型号码中单步“1.00”而不是1吗?

[英]Can you step “1.00” instead of just 1 in input type number?

我正在使用聚合物纸张输入,我想让我输入的type="number"总是显示2个小数点,包括它是一个整数。

因此,我希望始终将其显示为1.00而不是默认值1 我将纸张输入设置为step="1"或甚至step="0.01" ,但每次该值为整数时,它都不会显示1.00

<paper-input id="taxPercent" min="0" max="99" step="1.00" on-change="_onVariablesChanged" value="0.00"> Tax Percent</paper-input>
_onVariablesChanged: function (event){
 let value = event.target.value; 
 value = parseFloat(value).toFixed(2);
}

输入更新后,检查是否. 在值中找到。

  • 如果是这种情况,则无需改变某些内容。
  • 如果没有,请在最后添加.00

 document.addEventListener('DOMContentLoaded', () => { document.querySelector('input').addEventListener('input', update); }); function update() { if (/\\./.test(this.value) === false) { this.value = `${this.value}.00`; } } 
 <input type="number" step="0.01"> 

您可以使用事件侦听器来检测值何时更改。 input.value将是一个字符串,但添加+会将其转换为数字。 数字具有toFixed()方法( mdn ),它将数字格式化为包含一定数量的小数精度。

 const input = document.querySelector('input'); input.addEventListener('input', () => input.value = (+input.value).toFixed(2)); 
 <input type="number" min="1"> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM