【发布时间】:2017-09-20 15:02:59
【问题描述】:
我正在开发一个 Angular 4 项目。我有一个 HTML <input type="number"> 与 min max 和 step 属性。我的目标是防止输入超出用户友好的最小-最大范围的数字。我该怎么做?
function myFunction(e) {
var min = -100;
var max = 100;
var txtValue = document.getElementById("txt").value;
var pressedValue = e.key;
var combined = parseFloat(txtValue, pressedValue);
console.log(`OLD:${txtValue}\nNEW:${pressedValue}\nCOMBINED:${combined}`);
if (combined > max) {
e.preventDefault();
console.log('ohhw snapp');
}
}
<input type="number" id="txt" value="Hello" onkeydown="myFunction(event)" min="-100" max="100" step="0.05">
【问题讨论】:
-
您无法阻止某人输入不正确的值。而是向他们提供反馈,解释问题所在。
标签: javascript html user-experience