#! /usr/bin/perl -w
use strict;
use CGI::Ajax 0.57;
use CGI;
my $q = new CGI; # need a new CGI object
# compose our list of functions to export to js
my %hash = ( 'myFunc' => \&perl_func,);
my $pjx = CGI::Ajax->new( %hash ); # this is our CGI::Ajax object
$pjx->DEBUG(1); # turn on debugging
$pjx->JSDEBUG(1); # turn on javascript debugging, which will place a
# new div element at the bottom of our page showing
# the asynchrously requested URL
print $pjx->build_html( $q, \&Show_HTML ); # this builds our html
# page, inserting js
# This subroutine is responsible for outputting the HTML of the web
# page.
sub Show_HTML {
my $html = <<EOT;
<HTML>
<HEAD><title>Radio Example</title>
</HEAD>
<BODY>
<form>
<DIV id="radiobuttons" onclick="myFunc( ['radio1'], ['result'] );">
<input TYPE="radio" ID="radio1" NAME="radio1" VALUE="red">red
<input TYPE="radio" ID="radio1" NAME="radio1" VALUE="blue">blue
<input TYPE="radio" ID="radio1" NAME="radio1" VALUE="yellow">yellow
<input TYPE="radio" ID="radio1" NAME="radio1" VALUE="green">green
</DIV>
<div id='result'> </div>
</form>
</BODY>
</HTML>
EOT
return($html);
}
# this is the exported function
sub perl_func {
$a = shift;
return $a . " was selected";
}