Another note The default values that you specify for the forms are only used the first time the script is invoked (when there is no query string). On subsequent invocations of the script (when there is a query string), the former values are used even if they are blank.
If you want to change the value of a field from its previous value, you have two choices:
(1) call the param
method to set it.
(2) use the -override (alias -force) parameter (a new feature in version 2.15). This forces the default value to be used, regardless of the previous value:
print $query->textfield(-name=>'field_name', -default=>'starting value', -override=>1, -size=>50, -maxlength=>80);
Yet another note By default, the text and labels of form elements are escaped according to
HTML rules. This means that you can safely use
``<CLICK
ME>'' as the label for a button. However, it also interferes with your ability to incorporate special
HTML character sequences, such as Á, into your fields. If you wish to turn off automatic escaping, call the autoEscape
method with a false value immediately after creating the
CGI object:
$query = new CGI; $query->autoEscape(undef);