Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Passing javascript variables to Perl CGI

by Harch84 (Acolyte)
on Jul 20, 2007 at 14:56 UTC ( #627801=perlquestion: print w/replies, xml ) Need Help??

Harch84 has asked for the wisdom of the Perl Monks concerning the following question:

Hi I have a html page with javascript in it that assigns a set of coordinates to javascript variables. The question I have is how can I then send these variables to a Perl CGI script using a submit on a html form. An example of some of the code below:
var map; var geocoder = null; var addressMarker; var originpoint = null; .................... function showAddress(address) { if (geocoder) { geocoder.getLatLng(address, function(point1) { if (!point1) { alert(address + " not found"); } else { if (addressMarker) { map.removeOverlay(addressMarker); } addressMarker = new GMarker(point1); map.setCenter(point1, 15); map.addOverlay(addressMarker); originpoint = point1; alert("origin is now: "+originpoint+" destination is now +: "+destinationpoint); } } ); } } <body onload="load()" onunload="GUnload()"> <form action="#" onsubmit="showAddress(this.address.value); return + false"> <p> Origin:<input type="text" size="50" id="addressInput" name="address" +value="London, UK" /> <input type="submit" value="Show Origin" /> </p> </form>
Now I want to be able to store the variable "originpoint" and using another form to submit it to the perl CGI script. Any ideas?

Replies are listed 'Best First'.
Re: Passing javascript variables to Perl CGI
by grep (Monsignor) on Jul 20, 2007 at 15:13 UTC
    Create a hidden input element in the form and set the value with javascript. Then it will be passed as a CGI parameter.

    One other thing - You should also remember that some people will have JS off or blocked, so having a CGI only alternative is always recommended.

    UPDATE: added caveat

Re: Passing javascript variables to Perl CGI
by rvosa (Curate) on Jul 20, 2007 at 15:07 UTC
    The trick must be some way to put the variable in a form field, but since that's javascript I have no idea how to do that.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://627801]
Approved by Corion
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (3)
As of 2022-05-19 10:03 GMT
Find Nodes?
    Voting Booth?
    Do you prefer to work remotely?

    Results (71 votes). Check out past polls.