3 回答

TA貢獻1836條經驗 獲得超5個贊
使用typeof和三進制運算符+檢查它是否大于等于 0
function validate() {
var value = document.getElementById("digit").value;
if (!(!isNaN(+value) && value >= 0)) {
document.getElementById("numbers").innerHTML = "This is not a number, number must be greater or equal to zero";
return false;
}
document.getElementById("numbers").innerHTML = "";
return true;
}
<input onkeyup="validate()" value="" id="digit" />
<p id="numbers"></p>

TA貢獻1779條經驗 獲得超6個贊
使用本機方法Number.isInteger()
檢查最后一個字符是否為數字。如果沒有,請切片。
function validate(el) {
? var lastChar = Number(el.value.slice(-1));
? if (!Number.isInteger(lastChar)) {
? ? el.value = el.value.substring(0, el.value.length - 1);
? };
}
<input type="text" oninput="validate(this)">
添加回答
舉報