in reply to In HTML form adding new field

Perl runs on the server side, JavaScript runs on the client side. I don't see a new form field being added in the example you've posted, I see the value of $textstyle being displayed if Runon is selected from, at least this seems to be what you're trying to do. You don't show what your JavaScript function ifrunon is doing.

Without submitting the form you can't use Perl to check values of existing form fields and add new form fields, unless you use AJAX to do this, which seems overly complex when you could use plain old JavaScript to add (or show hidden) form fields depending on the values selected in other fields.

Make your example work in a plain HTML file, using JavaScript to achieve this. Consider using a templating module such as HTML::Template to separate your HTML/JavaScript/CSS code from your Perl code. Ovid's CGI Course is worth reading if you are new to CGI.