A Script that Uses Self-Referencing URLs to Jump to Internal Links
A Script that Uses Self-Referencing URLs to Jump to Internal
Links
(Without losing form information).
Many people have experienced problems with internal links on pages that
have forms. Jumping around within the document causes the state of the form to
be reset. A partial solution is to use the self_url() method to generate a link
that preserves state information. This script illustrates how this works.
#!/usr/local/bin/perl
use CGI;
$query = new CGI;
# We generate a regular HTML file containing a
very long list
# and a popup menu that does nothing except to
show that we
# don't lose the state
information.
print $query->header;
print $query->start_html("Internal Links
Example");
print "<H1>Internal Links
Example</H1>\n";
print "<A NAME=\"start\"></A>\n";
# an anchor point at the top
# pick a default starting
value;
$query->param('amenu','FOO1') unless
$query->param('amenu');
print
$query->startform;
print
$query->popup_menu('amenu',[('FOO1'..'FOO9')]);
print
$query->submit,$query->endform;
# We create a long boring list for the
purposes of illustration.
$myself =
$query->self_url;
print "<OL>\n";
for (1..100) {
print qq{<LI>List item #$_<A
HREF="$myself#start">Jump to top</A>\n};
}
print "</OL>\n";
print
$query->end_html;
|