diff options
Diffstat (limited to 'SelectLayers.pm')
-rw-r--r-- | SelectLayers.pm | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/SelectLayers.pm b/SelectLayers.pm index 7e5bbc8..58e1700 100644 --- a/SelectLayers.pm +++ b/SelectLayers.pm @@ -3,7 +3,7 @@ package HTML::Widgets::SelectLayers; use strict; use vars qw($VERSION); -$VERSION = '0.01'; +$VERSION = '0.02'; =head1 NAME @@ -87,11 +87,12 @@ form_text - (optional) Array reference of text (or hidden) form fields to copy form_checkbox - (optional) Array reference of checkbox form fields to copy from the B<form_name> form. +form_select - (optional) Array reference of select (not select multiple) form + fields to copy from the B<form_name> form. + fixup_callback - (optional) subroutine reference, returns supplimentary JavaScript for the function described above under FORMS. -#form_select - size - (optional) size of the E<lt>SELECTE<gt>, default 1. unique_key - (optional) prepended to all JavaScript function/variable/object @@ -191,6 +192,8 @@ sub _fixup { exists($self->{form_text}) ? $self->{form_text} : []; my $form_checkbox = exists($self->{form_checkbox}) ? $self->{form_checkbox} : []; + my $form_select = + exists($self->{form_select}) ? $self->{form_select} : []; my $html = " <SCRIPT> function ${key}fchanged(what) { @@ -209,9 +212,9 @@ sub _fixup { what.$f.value = '';\n" } -# foreach my $f ( @$form_select ) { -# $html .= "what.$f.value = document.$form_name.$f.options[document.$form_name.$f.selectedIndex].value;\n"; -# } + foreach my $f ( @$form_select ) { + $html .= "what.$f.value = document.$form_name.$f.options[document.$form_name.$f.selectedIndex].value;\n"; + } $html .= &{$self->{fixup_callback}}() if exists($self->{fixup_callback}); |