【发布时间】:2012-12-27 23:29:24
【问题描述】:
这是我的功能:
function reCalculate(i) {
document.getElementById("Q" + i).value = document.getElementById("C" + i).value - document.getElementById("QA" + i).value;
if (document.getElementById("Q" + i).value < 0) {
document.getElementById("Q" + i).value = 0;
}
if (document.getElementById("Q" + i).value < document.getElementById("E" + i).value && document.getElementById("Q" + i).value != 0) {
alert(document.getElementById("Q" + i).value + " is less than " + document.getElementById("E" + i).value + "?");
document.getElementById("Q" + i).value = document.getElementById("E" + i).value;
}
document.getElementById("Q" + i).value = Math.ceil(document.getElementById("Q" + i).value);
}
它检查 Q,如果小于 0,则为 0。然后,如果不是 0,但小于 E,则为 E。出于某种原因,此函数有效,除非 Q 是两位数。
例如,如果 Q 为 7,E 为 2,那么它将 Q 保留为 7。但是,如果 Q 为 10,E 为 2,由于某种原因,它认为 10
我在这里错过了什么吗??
【问题讨论】:
-
请将您的 DOM 元素缓存到变量中。每次使用 getById 都会回到 DOM 中,并且性能代价高昂。
-
好点,我修好了,谢谢!