Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Re: popup menu

by derby (Abbot)
on Nov 20, 2011 at 14:45 UTC ( #939080=note: print w/replies, xml ) Need Help??

in reply to popup menu

When writing webapps, you have to understand what actions happen server side (your cgi script) and what happens client side (99.99% of the time, Javascript). In this particular case, you're creating some HTML using CGI's built in generators. The onchange argument is creating HTML so that when the select changes, the *client* side selectedVarfn function will be called:

<select name="var" onchange="selectedVarFns()" id="var"> <option selected="selected" value="Var">Var</option> <option value="a">a</option> <option value="b">b</option> <option value="c">c</option> </select>
So you would have to write that function in Javascript and deliver the JS with the HTML. Now I'm guessing this is some type of homework assignment since there are newer/better ways of writing webapps -- both the server side and on the client side. At a minimum server side, ditch CGI's html methods for something like Template::Toolkit or HTML::Template. On the client side, a framework like jQuery would serve you better than sprinkling onchanges throughout your HTML. But before you do that, try to get a really clear understanding of what happens server side versus what happens client side.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://939080]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (3)
As of 2018-05-21 15:57 GMT
Find Nodes?
    Voting Booth?