Note that there are some explanatory texts on larger screens.

plurals
  1. POPassing function results to another function variable in Javascript
    primarykey
    data
    text
    <p>Please forgive my ignorance, as I'm pretty new to Java script. Here is what I'm trying to do. I have a form where users can enter in data to get reimbursed. It sums totals up horizontally, and then takes the final values and adds them vertically for a grand total. I have everything working horizontally, and I can add the last 5 rows vertically, but when I add in the first two rows, it doesn't work. I get NaN for the answer. Here is the code.</p> <pre><code>&lt;script type="text/javascript"&gt; function calcWages(){ document.getElementById('wages').innerHTML = ''; var num2 = new Number(document.getElementById('hours').value); var num3 = new Number(document.getElementById('rate').value); document.getElementById('wages').innerHTML = ((num3 * num2).toFixed(2)); } function calcMilage(){ document.getElementById('milage').innerHTML = ''; var num4 = new Number(document.getElementById('miles').value); document.getElementById('milage').innerHTML = ((num4 * .555).toFixed(2)); } function calcTotal(){ document.getElementById('total').innerHTML = ''; var num5 = new Number(document.getElementById('wages').value); var num6 = new Number(document.getElementById('milage').value); var num7 = new Number(document.getElementById('travel').value); var num8 = new Number(document.getElementById('lodging').value); var num9 = new Number(document.getElementById('food').value); var num10 = new Number(document.getElementById('office').value); var num11 = new Number(document.getElementById('other').value); document.getElementById('total').innerHTML = (( num5 + num6 + num7 + num8 + num9 + num10 + num11).toFixed(2)); } window.onload=function(){ document.getElementById('totalCalc').onclick = calcTotal; } &lt;/script&gt; &lt;table&gt; &lt;tr&gt; &lt;td&gt;&lt;/td&gt; &lt;td&gt;&lt;/td&gt; &lt;td&gt;&lt;/td&gt; &lt;td&gt; Total: &lt;/td&gt; &lt;td&gt;&lt;/td&gt; &lt;td&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Wages:&lt;/td&gt; &lt;td&gt;Hours:(8 a day Max)&lt;input type="text" name="hours" id="hours" size="3" maxlength="3" onchange="calcWages()"&gt;&lt;/td&gt; &lt;td&gt;Rate:&lt;input type="text" name="rate" id="rate" size="3" maxlength="5" onchange="calcWages()"&gt;&lt;/td&gt; &lt;td&gt;=&lt;/td&gt; &lt;td&gt;&lt;div id="wages"&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Milage:&lt;/td&gt; &lt;td&gt;Miles&lt;input type="text" name="miles" id="miles" size="3" maxlength="4" onchange="calcMilage()"&gt;&lt;/td&gt; &lt;td&gt;IRS rate ($0.555)&lt;/td&gt; &lt;td&gt;=&lt;/td&gt; &lt;td&gt;&lt;div id="milage"&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; Travel: &lt;/td&gt; &lt;td colspan="2"&gt; &lt;input type="text" name="tavelitem" id="travelitem" size="36"&gt; &lt;/td&gt; &lt;td&gt; = &lt;/td&gt; &lt;td&gt;&lt;input type="text" name="travel" id="travel" size="3"&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lodging:&lt;/td&gt; &lt;td colspan="2"&gt;&lt;input type="text" name="lodgingitem" id="lodgingitem" size="36"&gt; &lt;/td&gt; &lt;td&gt;=&lt;/td&gt; &lt;td&gt;&lt;input type="text" name="lodging" id="lodging" size="3"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Food:&lt;/td&gt; &lt;td colspan="2"&gt;&lt;input type="text" name="fooditem" id="fooditem" size="36"&gt; &lt;/td&gt; &lt;td&gt;=&lt;/td&gt; &lt;td&gt;&lt;input type="text" name="food" id="food" size="3"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Office Supplies:&lt;/td&gt; &lt;td colspan="2"&gt;&lt;input type="text" name="officesupplies" id="officesupplies" size="36"&gt; &lt;/td&gt; &lt;td&gt;=&lt;/td&gt; &lt;td&gt;&lt;input type="text" name="office" id="office" size="3"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Other:&lt;/td&gt; &lt;td colspan="2"&gt;&lt;input type="text" name="otheritem" id="otheritem" size="36"&gt;&lt;/td&gt; &lt;td&gt;=&lt;/td&gt; &lt;td&gt;&lt;input type="text" name="other" id="other" size="3"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;/td&gt; &lt;td&gt;&lt;button id="totalCalc"&gt;Total&lt;/button&gt;&lt;/td&gt; &lt;td&gt;Grand Total:&lt;/td&gt; &lt;td&gt;=&lt;/td&gt; &lt;td&gt;&lt;div id="total"&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </code></pre> <p>The calcWages function and the calcMilage functions work, but I seem to be getting hung up and getting the results of those two, to work in the calcTotal function. I apologize if this doesn't make sense. Let me know, and I'll try to clarify. Thanks.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload