JavaScript calculate function won't work on firefox

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Gianluka
    New Member
    • Jun 2012
    • 1

    JavaScript calculate function won't work on firefox

    This function is called onblur when I insert numbers as you can see on this page:


    I pass by data with PHP from a reservation page that comes before:

    You can just click 'Reserveer Dagworkshop' on the first block 'Short' on light blue.

    and this is the javascript:
    Code:
    <script language="JavaScript" type="text/javascript">
    
    function Calculate()
    
    {
       // calculate each line total
       
       var decim = 100;
       var fee = 0;
       
       if(phpformmailer.kortingskaart_fee.checked)
    	{
    		fee = 4;
    		phpformmailer.discount_type.value = "Made by Me! Kortingskaart";
    	}
    	else
    	{
    		fee = 0;
    		phpformmailer.discount_type.value = "NO-Korting Selected";
    	}
    	if (phpformmailer.total_bon.value==null || phpformmailer.total_bon.value=="")
    	phpformmailer.total_bon.value = 0;
        
    	if (phpformmailer.howmany.value == 1)
    	phpformmailer.total_costs.value = Math.round(parseFloat(phpformmailer.howmany.value) * parseFloat(phpformmailer.cost.value) * decim) / decim;
    	else
    	phpformmailer.total_costs.value = Math.round(parseFloat(phpformmailer.howmany.value) * parseFloat(phpformmailer.cost.value) * decim) / decim;
    
    	if (phpformmailer.howmanydiscount.value == 1)
    	phpformmailer.totaldiscount.value = Math.round(parseFloat(phpformmailer.howmanydiscount.value) * parseFloat(phpformmailer.originalcost.value) / 100 * 50 * decim) / decim;
    	else 
    	phpformmailer.totaldiscount.value = Math.round(parseFloat(phpformmailer.howmanydiscount.value) * parseFloat(phpformmailer.originalcost.value) / 100 * 50 * decim) / decim;
       
    	if (phpformmailer.howmanygratis.value == 1)
    	phpformmailer.totalgratis.value = Math.round(parseFloat(phpformmailer.howmanygratis.value) * 69 * decim) / decim;
    	else 
    	phpformmailer.totalgratis.value = Math.round(parseFloat(phpformmailer.howmanygratis.value) * 69 * decim) / decim;
    	
    	phpformmailer.total_off.value = Math.round((parseFloat(phpformmailer.totaldiscount.value) + parseFloat(phpformmailer.totalgratis.value) + parseFloat(phpformmailer.total_bon.value)) * decim) / decim;
    	
    	phpformmailer.total.value = Math.round(((parseFloat(phpformmailer.total_costs.value)  - parseFloat(phpformmailer.total_off.value)) + fee) * decim) / decim;
    	
    	
    }
    
    </SCRIPT>
    Last edited by Dormilich; Jun 1 '12, 11:32 PM. Reason: Please use [CODE] [/CODE] tags when posting code.
  • Dormilich
    Recognized Expert Expert
    • Aug 2008
    • 8694

    #2
    Firefox does not automatically wrap names/IDs into JavaScript variables. the HTML way of accessing form elements is: document.form_n ame.element_nam e.

    Comment

    Working...