Solved

How do I pass an amount variable from within a website page inside javascript to an outside var in the html for posting to paypal?

Posted on 2006-06-26
6
260 Views
Last Modified: 2013-12-16
Hi everyone,


I have some javascript in a webpage which calculates the total amount of selections on the page.  I need to somehow pass this variable "TotalAmt" to the html area of the page to be then posted to paypal.  The problem is that once the javascript block ends so does the variable etc.

Can anyone help?

Please let me express my thanks in advance.

Best regards,

Dynotoe
0
Comment
Question by:Dynotoe
  • 3
  • 2
6 Comments
 
LVL 7

Expert Comment

by:maUru
ID: 16989055
got some code?
0
 
LVL 7

Expert Comment

by:maUru
ID: 16989069
i dont know if this will work since i have no context but:

// this is the html form box that contains the value to be posted
<input type="text" id="totalamt" name="totalamt">


// this is the javascript that goes *directly under* the line (in the javascript) where TotalAmt is finally calculated
  document.forms[0]..value = TotalAmt;
0
 
LVL 7

Expert Comment

by:maUru
ID: 16989072
sorry that should read:

 document.forms[0].totalamt.value = TotalAmt;
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 3

Expert Comment

by:boethius78
ID: 16990511
Not sure how a javascript question ended up in the C# area, but can't you just use something like this:

var totalAmount;

function calculateAmount()
{
    totalAmount = Math.random();
}


Depends on how you want to pass the variable on.  If you'll be using Javascript (eg: XMLHttpRequest), this approach will be fine.  If you'll be using HTTP POST, I'd suggest using a hidden input control (ie: <input type="hidden" id="totalAmount" />) and using document.getElementById('totalAmount').value = ... to set the value.
0
 

Author Comment

by:Dynotoe
ID: 16995620
Hi Gents,

Boethius,  I implemented what you suggested and wrote the following to see if it was working and it is.

//document.write(grosstotal);
//document.write(grandtotal);
document.getElementById('totalamount').value = grandtotal;
var text=document.getElementById('totalamount').value;
document.write(text);

}//end of javascript

However I can't seem to get the value into the paypal amount line in the html area further down on the page for posting...

<input type="hidden" name="amount" value="">

where this would normally work...

<input type="hidden" name="amount" value="400.00">


Please Help!!  :)

Best Dynotoe
0
 
LVL 3

Accepted Solution

by:
boethius78 earned 500 total points
ID: 16999269
I'm not totally sure that I've understood your question, so please forgive me if I'm off target.

You'll need to add an id to the element in order to access it easily from javascript:

<input type="hidden" id="amount" name="amount" />

Once you've called document.getElementById('amount').value = grandtotal;, the value will be set correctly.  The HTML source, however, won't display the changed value.  Essentially, the HTML is used to load the page into it's initial state.  After that, the form and all of it's values are held in memory.  When you submit the page, the value recieved by the server will be correct, but the HTML won't have been altered.

Hope this helps.
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Article by: Najam
Having new technologies does not mean they will completely replace old components.  Recently I had to create WCF that will be called by VB6 component.  Here I will describe what steps one should follow while doing so, please feel free to post any qu…
Introduction In this tutorial, I'll explain how to create an animated progress meter in a wireframe prototype developed using Axure RP 7.0 - a leading prototyping tool for designing web sites and software. (For more information about Axure and gett…
The purpose of this video is to demonstrate how to prevent comment spam on a WordPress Website. This will be demonstrated using a Windows 8 PC. Plugin Akismet will be used. Go to your WordPress login page. This will look like the following: myw…
The purpose of this video is to demonstrate how to set up the permalinks on a WordPress Website. This will be demonstrated using a Windows 8 PC. Go to your WordPress login page. This will look like the following: mywebsite.com/wp-login.php : Go t…

759 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now