# Javascript calculation multiple fields

• 01-29-2013, 02:58 AM
CDD_Aus
Javascript calculation multiple fields
Hi there,

I am creating a gym membership form - it will offer two different types of memberships at 3 different locations.

All of these options could be housed in a drop down - or not.

Once the user has selected their membership option I will need to add together a couple of lines of fees : so a start up fee + admin fee + (1week of cost+remaining number of days of cost in the week of purchase)

The start up fee and admin fee are known costs \$99 and \$49. 1 week costs=\$10.99. So the mathematical formula in the brackets would be ( if purchased on a sat) \$10.99+(10.99*6)/7

The form is a basic payment form other than these calculations.
But any assistance would be greatly appreciated - I'm in the midst of learning javascript - but I'm just not able to tackle this type of calculation as yet.
• 02-04-2013, 09:01 PM
jalarie
If I understand correctly, would the equations be:

Sunday=\$158+\$10.99*7/7
Monday=\$158+\$10.99*6/7
Tuesday=\$158+\$10.99*5/7
Wednesday=\$158+\$10.99*4/7
Thursday=\$158+\$10.99*3/7
Friday=\$158+\$10.99*2/7
Saturday=\$158+\$10.99*1/7

If so, use the Date function to get the day number, subtract that from 7, and use the result as the multiplier in:

Amount=\$158+\$10.99*(7-DayNum)/7
• 02-04-2013, 09:12 PM
CDD_Aus
function myDateFunction()
{
var date = new Date();
var today = date.getDay();
var daily = 10.99/7;
var days = [1, 7, 6, 5, 4, 3, 2];

// select the tag with the the id Amount
var x = document.getElementById('Amount');

// insert the value into the input
x.value = parseFloat(99 + 49 + (daily * days[today])+10.99).toFixed(2)

}

I have this so far and it's working...
But I need each of the amounts for : admin, start up and pro rata to be fed into their input fields on change - the change being the user's selection of this type of membership or another that doesn't have a start up fee ( so exactly the same but 0=start up fee)

This next step has got me stuck!

## X vBulletin 4.2.2 Debug Information

• Page Generation 0.09700 seconds
• Memory Usage 2,346KB
• Queries Executed 11 (?)
Template Usage (19):
• (1)footer
• (1)gobutton
• (1)navbar_moderation
• (1)navbar_noticebit
• (2)option
• (1)spacer_close
• (1)spacer_open

Phrase Groups Available (3):
• global
• postbit
Included Files (19):
• ./global.php
• ./includes/class_bootstrap.php
• ./includes/init.php
• ./includes/class_core.php
• ./includes/config.php
• ./includes/functions.php
• ./includes/class_friendly_url.php
• ./includes/class_hook.php
• ./includes/class_bootstrap_framework.php
• ./vb/vb.php
• ./vb/phrase.php
• ./includes/functions_calendar.php
• ./includes/class_bbcode_alt.php
• ./includes/class_bbcode.php
• ./includes/functions_bigthree.php
• ./includes/functions_notice.php

Hooks Called (41):
• init_startup
• init_startup_session_setup_start
• database_pre_fetch_array
• database_post_fetch_array
• init_startup_session_setup_complete
• global_bootstrap_init_start
• global_bootstrap_init_complete
• cache_permissions
• fetch_foruminfo
• global_state_check
• global_bootstrap_complete
• global_start
• style_fetch
• global_setup_complete
• bbcode_fetch_tags
• bbcode_create
• bbcode_parse_start
• bbcode_parse_complete_precache
• bbcode_parse_complete
• cache_templates
• cache_templates_process
• template_register_var
• template_render_output
• fetch_template_start
• fetch_template_complete
• parse_templates
• notices_check_start
• notices_noticebit
• friendlyurl_resolve_class
• friendlyurl_clean_fragment
• friendlyurl_geturl
• process_templates_complete