【发布时间】:2017-12-28 23:02:27
【问题描述】:
我得到了这个输入:
<input name='num2' type='number' id=num2 onblur="checkValue(this)">
<script>
function checkValue(input) {
console.log(input.value);
if (input.value > 20) {
return input.value = 20;
} else if (input.value < 0){
return input.value = 0;
} else if (input.value == '' || isNaN(input.value)) {
return input.value = 0;
} else {
return input.value;
}
}
$("#num1, #num2").focusout(function() {
$("#answer").html('');
var num1 = $("#num1").val();
var num2 = $("#num2").val();
var answer = num1 * num2;
$("#answer").html(answer);
});
</script>
问题是,当我写的数字高于 20 时,输入值会发生变化,但 javascript 仍然继续以我输入的数字计数,例如 100000。但我希望 javascript 计数onblur 改变了值。如果我走正确的路或者我应该使用其他脚本,请至少告诉我。
【问题讨论】:
-
返回语句毫无意义
-
so 调整数字后触发事件。
标签: javascript input onblur