HTML Attribute for <INPUT ...>
NAME

NAME assigns a name to the input field, and is required in most circumstances. In forms which use CGI, the name of the input field is sent to the CGI:

This Code Makes This
<FORM ACTION="/cgi-bin/mycgi.pl">
favorite color: <INPUT NAME="favecolor">
<P><INPUT TYPE=SUBMIT VALUE="submit">
</FORM>
favorite color:

(Form is not live)

For radio buttons and submit buttons you can use the same name in more than one input to indicate different options. notice in these examples that the names are the same but the values for each option change:

This Code Makes This
<FORM ACTION="/cgi-bin/mycgi.pl">
What size pizza?<P>
<INPUT TYPE=RADIO NAME="pizzasize" VALUE="S">small<BR>
<INPUT TYPE=RADIO NAME="pizzasize" VALUE="M">medium<BR>
<INPUT TYPE=RADIO NAME="pizzasize" VALUE="L">large<P>
<INPUT TYPE=SUBMIT VALUE="submit">
</FORM>
What size pizza?

small
medium
large

(Form is not live)

<FORM ACTION="/cgi-bin/mycgi.pl">
Go to the check-out page? 
<INPUT TYPE=SUBMIT NAME="checkout" VALUE="YES"> 
<INPUT TYPE=SUBMIT NAME="checkout" VALUE="NO"> 
</FORM>
Go to the check-out page? (Form is not live)

Forms that use scripting also use NAME. The input object is in the elements collection of the form object, and can be referred to by its name using dot notation. In this example, we use the this.form.email to refer to the email input field. This code requests an email address. If none is given, the form is not submitted.

<FORM 
 ACTION="/cgi-bin/mycgi.pl" 
 onSubmit="return (this.email.value != '')"
 >
email: <INPUT NAME="email"><BR>
<INPUT TYPE=SUBMIT VALUE="submit">
</FORM>

which gives us

email:

<INPUT VALUE="..."> >