HTML 表单

HTML 表单用于搜集不同类型的用户输入。

<form> 元素

HTML 表单用于收集用户输入。

<form> 元素定义 HTML 表单:

Esimerkki

<form>
 .
form elements
 .
</form>

HTML 表单包含表单元素

表单元素指的是不同类型的 input 元素、复选框、单选按钮、提交按钮等等。

<input> 元素

<input> 元素是最重要的表单元素

<input> 元素有很多形态,根据不同的 type 属性。

这是本章中使用的类型:

类型 Kuvaus
text 定义常规文本输入。
radio 定义单选按钮输入(选择多个选择之一)
submit 定义提交按钮(提交表单)

Huomautus:您稍后将在本教程学到更多有关输入类型的知识。

文本输入

<input type="text"> 定义用于文本输入的单行输入字段:

Esimerkki

<form>
 Etunimi:<br>
<input type="text" name="firstname">
<br>
 Sukunimi:<br>
<input type="text" name="lastname">
</form> 

Kokeile itse!

在浏览器中看起来是这样的:

Etunimi:


Sukunimi:

Huomautus:表单本身并不可见。还要注意文本字段的默认宽度是 20 个字符。

单选按钮输入

<input type="radio"> 定义单选按钮

单选按钮允许用户在有限数量的选项中选择其中之一:

Esimerkki

<form>
<input type="radio" name="sex" value="male" checked>Male
<br>
<input type="radio" name="sex" value="female">Female
</form> 

Kokeile itse!

单选按钮在浏览器看起来是这样的:

Male

Female

提交按钮

<input type="submit"> 定义用于向表单处理程序(form-handler)提交表单的按钮。

表单处理程序通常是包含用来处理输入数据的脚本的服务器页面。

表单处理程序在表单的 action 属性中指定:

Esimerkki

<form action="action_page.php">
Etunimi:<br>
<input type="text" name="firstname" value="Mickey">
<br>
Sukunimi:<br>
<input type="text" name="lastname" value="Mouse">
<br><br>
<input type="submit" value="Submit">
</form> 

Kokeile itse!

在浏览器中看起来是这样的:

Etunimi:


Sukunimi:


Action 属性

action 属性定义在提交表单时执行的动作。

向服务器提交表单的通常做法是使用提交按钮。

通常,表单会被提交到 web 服务器上的网页。

在上面的例子中,指定了某个服务器脚本来处理被提交表单:

<form action="action_page.php">

Jos action-ominaisuutta ei ole määritelty, action asetetaan nykyiseen sivulle.

Method-ominaisuus

method-ominaisuusMäärittää lomakkeen lähettäessä käytetyn HTTP-menetelmän (GET tai POST)

<form action="action_page.php" method="GET">

tai:

<form action="action_page.php" method="POST">

Milloin käyttää GET:ää?

Voit käyttää GET:ää (oletusmenetelmä):

Jos lomakkeen lähettäminen on passiivista (esim. hakukonehaku) eikä sisällä arkaluontoisia tietoja.

Kun käytät GET:ää, lomaketiedot ovat näkyvissä selaimen osoitevalikossa:

action_page.php?firstname=Mickey&lastname=Mouse

Huomautus:GET sopii parhaiten pienten tietomäärien lähettämiseen. Selain asettaa kapasiteettilimitin.

Milloin käyttää POST:ia?

Sinun tulisi käyttää POST:ia:

Jos lomake päivittää tietoja tai sisältää arkaluontoisia tietoja (esim. salasana).

POST on turvallisempi, koska lomakkeessa lähetettävät tiedot eivät ole näkyvissä selaimen osoitevalikossa.

Nimi-ominaisuus

Jokaisella syöttökentällä on oltava name-ominaisuus, jotta se voidaan lähettää oikein.

Tässä esimerkissä vain "Sukunimi"-syöttökenttä lähetetään:

Esimerkki

<form action="action_page.php">
Etunimi:<br>
<input type="text" value="Mickey">
<br>
Sukunimi:<br>
<input type="text" name="lastname" value="Mouse">
<br><br>
<input type="submit" value="Submit">
</form> 

Kokeile itse!

Yhdistä lomakketiedot <fieldset>-elementillä

<fieldset> Elementit yhdistävät lomakkeen liittyvät tiedot.

<legend> Elementti määrittää <fieldset>-elementin otsikon.

Esimerkki

<form action="action_page.php">
<fieldset>
<legend>Henkilökohtaiset tiedot:</legend>
Etunimi:<br>
<input type="text" name="firstname" value="Mickey">
<br>
Sukunimi:<br>
<input type="text" name="lastname" value="Mouse">
<br><br>
<input type="submit" value="Submit"></fieldset>
</form> 

Kokeile itse!

Tämä HTML-koodi näyttää selaimessa tältä:

Henkilökohtaiset tiedot:
Etunimi:


Sukunimi:


HTML Form ominaisuudet

HTML <form>-elementti, jossa on asetettu kaikki mahdolliset ominaisuudet, näyttää tältä:

Esimerkki

<form action="action_page.php" method="GET" target="_blank" accept-charset="UTF-8"
ectype="application/x-www-form-urlencoded" autocomplete="off" novalidate>
.
form elements
 .
</form> 

Tässä on <form>-ominaisuuksien luettelo:

Ominaisuus Kuvaus
accept-charset Määritä lomakkeen lähettämiseen käytettävä merkistö (oletus: sivun merkistö).
action Määritä lomakkeen lähettämisen osoite (URL) (lähettämispagina).
autocomplete Määritä selain suorittaa automaattisesti lomakkeen (oletus: käytössä).
enctype Määritä lähetettävän tiedon koodaus (oletus: url-encoded).
method Määritä lomakkeen lähettämiseen käytettävä HTTP-menetelmä (oletus: GET).
name Määritä lomakkeen nimi (DOM:lle: document.forms.name).
novalidate Määritä selain ei tarkista lomaketta.
target Määritä action ominaisuuden osoitteen kohde (oletus: _self).

Huomautus:Tutustut seuraavassa luvussa enemmän ominaisuuksista.