in reply to (jeffa) Re: CGI.pm radio box with multiple JavaScript onClick events
in thread CGI.pm radio box with multiple JavaScript onClick events

Thanks for the replay, but thats not exactly what I was looking for...maybe I didnt explain myself well. I'd like for each option in the radion button to have a different javascript function. In other words I want to send a variable either new or old to a javascript function depending on which button is selected. So I was thinking something like..
$q->radio_group(-name=>"type", -values=>["old", "new"], -default=> "old", -onClick=>{old=>old_or_new(old), new=>old_or_new(new)} +, -labels=>{old=>"Current Device Type", new=>"Add Device T +ype"})
but ofcourse my syntax is wrong. thanks again
  • Comment on Re: (jeffa) Re: CGI.pm radio box with multiple JavaScript onClick events
  • Download Code

Replies are listed 'Best First'.
(jeffa) 3Re: CGI.pm radio box with multiple JavaScript onClick events
by jeffa (Bishop) on Jun 24, 2003 at 20:31 UTC
    My mistake, i now see that you did use a hash reference ... *squints eyes*

    Your syntax is not too off, what you need to do is use the -attributes arg available in CGI.pm 2.93

    6.  The optional sixth parameter (-attributes) is pro-
        vided to assign any of the common HTML attributes
        to an individual menu item. It's a pointer to an
        associative array relating menu values to another
        associative array with the attribute's name as the
        key and the attribute's value as the value.
    
    Now, getting this syntax correct is a bit of a pickle. You have to use single quotes inside the alert - if you use double quotes, they will confict because double quotes are used to surround the onClick code:
    print radio_group( -name => 'type', -values => [qw(old new)], -default => 'old', -labels => {old=>'Current Device Type', new=>'Add Device Type'}, -attributes => { old => {onClick=>"alert('Current');"}, new => {onClick=>"alert('Add');"}, } );

    And my apologies for missing the real question the first time.

    jeffa

    L-LL-L--L-LL-L--L-LL-L--
    -R--R-RR-R--R-RR-R--R-RR
    B--B--B--B--B--B--B--B--
    H---H---H---H---H---H---
    (the triplet paradiddle with high-hat)