繁体   English   中英

在 JavaScript 计算中出错(参考之前的计算)

[英]Getting Error in JavaScript Calculation (Referring to Previous Calculation)

尝试计算使用先前计算中的数字的数字时出现错误。

第一次计算:结束深度 - 开始深度 = 素材。

第二个计算:镜头/渗透率 = 预期钻孔时间。

第二个计算使用从第一个计算得出的素材。

我尝试了很多方法来做到这一点,包括添加另一个事件按钮,但我继续收到似乎由else{触发的错误else{

有谁知道这里发生了什么?

我有一个更长的代码,我尽可能地隔离了这个东西。

尝试创建另一个事件按钮,在这里完全丢失了。

 function calculate() { intervalFootage("Interval-1-StartMD", "Interval-1-EndMD", "Interval-1-Footage"); expectedHours("Interval-1-ROP", "Interval-1-Footage", "Interval-1-ExpectedHours"); } function intervalFootage(startingDepth, endingDepth, output) { var starting = document.getElementById(startingDepth).value; var ending = document.getElementById(endingDepth).value; if (starting > -1 && ending > -1) { var answer = ending - starting; } else { var answer = "N/A"; } document.getElementById(output).innerHTML = answer; } function expectedHours(rateofpenetration, intervallength, output) { var rop = document.getElementById(rateofpenetration).value; var length = document.getElementById(intervallength).value; if (rop > 0 && length > 0) { var hours = length / rop; } else { var hours = "N/A"; } document.getElementById(output).innerHTML = hours; }
 <table style="width:100%"> <tr> <th></th> <th>Interval 1</th> </tr> <tr> <td>Staring Depth (MD)</td> <th><input type="number" id="Interval-1-StartMD" name="Interval-1- StartMD" min="0"></th> </tr> <tr> <td>Ending Depth (MD)</td> <th><input type="number" id="Interval-1-EndMD" name="Interval-1-EndMD" min="0"></th> </tr> <tr> <td>Interval Footage (ft)</td> <th id="Interval-1-Footage"></th> </tr> <tr> <td>Expected Avg. ROP (ft/hr)</td> <th><input type="number" id="Interval-1-ROP" name="Interval-1-ROP" min="0"></th> </tr> <tr> <td>Expected Hours to Drill</td> <th id="Interval-1-ExpectedHours"></th> </tr> </table> <p></p> <button onclick="calculate()">Calculate</button>

看起来你得到了错误的结果,因为这一行var length = document.getElementById(intervallength).value; 实际上是试图获取undefined的 '' 元素的值。 如果你想获取之前插入到这个 td 元素的值,你应该像这样使用innerHTMLinnerTextvar length = document.getElementById(intervallength).innerText;

暂无
暂无

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

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