HTML建立表单

建立表单(form元素)

form元素可以指定下面的内容:
(1)表单的布局。
(2)指定处理表单的服务嘴程序URI地址,该服务端程序应该可以处理“名称值”对
(3)数据传送到服务器的方式。(4)表单数据的字符编码。
(5)除了包含表单控件外,form元素也可以包含其他的文本元素,如段落、列表等,form元素的属性很多,下面几个比较重要,且较常使用:

  • 其中action属性用于设定处理表单数据程序URI的地址,如http:/ocalhost/test.asp。
  • 属性method用来定义数据传送到服务器的方式。有4种主要的方式:
    当method- "GET"时, 将输入数据加在action指定的地址后面传送到服务器,即将输入数据按照HTTP传输协议中的GET传输方式传送到服务器。
    当method "POST"时,则将输入数据按照HTTP传输协议中的POST传输方式传送到服务器。
    当method "PUT"时,则将输入数据按照HTTP传输协议中的PUT传输方式传送到服务器。
    当method "DELETE"时,则将输入数据按照HTTP传输协议中的DELETE传输方式传送到服务器。
  • 属性name用于设定表单的名称。
  • 属性target用来指定输入数据结果显示在哪个窗口,某些情况下需要与frame元素配合使用。
  • 属性enetype用来设置表单数据的内容类型。
  • 属性acept-charset 用来设置服务器端可以处理的字特编码,这个属性的值是个字符编码列表,使用空自或者退号分割,目的是揭承国览器限制用户输入的数据,以免不能被服务器处理的数据被输入。如果不定义该属性,该属性的默认值是UNKNOWN,表示不会限制用户的输入。
  • autocomplete属性规定所有表单控件是香应镇相有自动完成功能。当设置autocomplete="on"时表示执行自动完成功能,当设置autocomplete="off"时表示不执行自动完成功能。在HTML5规定该属性之前,大部分测览器都提供输入文本框的自动完成功能,即使HTML4没有定义autocomplete属性。但autocomplete属性现在不但用于form元素定义表单的输入文本框,而且还适用于很多其他元素。
  • novalidate 属性规定在提交表单时不再进行有效性验证。
    注意,对于button和input 元素,可以定义属性formnovalidate重写form的novalidate属性。
  • onresetonsubmit是两个全局属性,是主要针对reset 按钮和submit按钮来说的,分别设定了在按下相应按钮之后要执行的程序。
form表单中input元素的属性及其功能描述:
input属性 属性值 功能描述
accept audio/* video/* image/* MIME_type 规定通过文件上传来提交的文件的类型。 (只针对type="file")
align left right top middle bottom HTML5已废弃,不赞成使用。规定图像输入的对齐方式。 (只针对type="image")
alt left right top middle bottom 定义图像输入的替代文本。 (只针对type="image")
autocomplete(new) on off autocomplete 属性规定 <input> 元素输入字段是否应该启用自动完成功能。
autofocus(new) autofocus 属性规定当页面加载时 <input> 元素应该自动获得焦点。
checked checked checked 属性规定在页面加载时应该被预先选定的 <input> 元素。 (只针对 type="checkbox" 或者 type="radio")
disabled disabled disabled 属性规定应该禁用的 <input> 元素。
form(new) form_id form 属性规定 <input> 元素所属的一个或多个表单。
formaction(new) URL 属性规定当表单提交时处理输入控件的文件的 URL。(只针对 type="submit" 和 type="image")
formenctype(new) application/x-www-form-urlencoded multipart/form-data text/plain 属性规定当表单数据提交到服务器时如何编码(只适合 type="submit" 和 type="image")。
formmethod(new) get post 定义发送表单数据到 action URL 的 HTTP 方法。 (只适合 type="submit" 和 type="image")
formnovalidate(new) formnovalidate formnovalidate 属性覆盖 <form> 元素的 novalidate 属性。
formtarget(new) _blank _self _parent _top framename 规定表示提交表单后在哪里显示接收到响应的名称或关键词。(只适合 type="submit" 和 type="image")
height](new) pixels 规定 <input>元素的高度。(只针对type="image")
list(new) datalist_id 属性引用 <datalist> 元素,其中包含 <input> 元素的预定义选项。
max(new) number date 属性规定 <input> 元素的最大值。
maxlength number 属性规定 <input> 元素中允许的最大字符数。
min(new) number date 属性规定 <input>元素的最小值。
multiple(new) multiple 属性规定允许用户输入到 <input> 元素的多个值。
nam text name 属性规定 <input> 元素的名称。
pattern(new) regexp pattern 属性规定用于验证 <input> 元素的值的正则表达式。
placeholder text placeholder 属性规定可描述输入 <input> 字段预期值的简短的提示信息 。
readonly readonly readonly 属性规定输入字段是只读的。
required(new) required 属性规定必需在提交表单之前填写输入字段。
size number size 属性规定以字符数计的 <input> 元素的可见宽度。
src URL src 属性规定显示为提交按钮的图像的 URL。 (只针对 type="image")
step(new) number step 属性规定 <input> 元素的合法数字间隔。
type button
checkbox
color(new)
date(new)
datetime(new)
datetime-local(new)
email(new)
file
hidden
image
month(new)
number(new)
password
radio
range(new)
reset
search(new)
submit
tel(new)
text
time(new)
url(new)
week(new)
type 属性规定要显示的 <input> 元素的类型。
value text 指定 <input> 元素 value 的值。
width(new) pixels width 属性规定 <input> 元素的宽度。 (只针对type="image")
创建组合控件和列表框控件

组合框控件和列表框控件使用selet元素和option元素共同来完成,它们必须配合使用才能完成一个组合框控件或列表框控件的功能: select元素用来指定一个表单的类型,且需要option 元素为该表单提供数值项。基本语法格式如下:

<select name="select" size="size" multiple= "multiple">
  <option selected="selected">Item 1</option>
  <option selected="selected">Item 2</option>       
  <optionselected="selected">Item 3</option>
  <option selected="se lected">Item 4</option>
</select>

当select元素不包含属性size 和属性multiple时,表单类型显示为菜单(组合框),如果使用了属性size和属性mutiple中的任意个, 则表单类型显示为列表框。

select元素

select元素用来创建列表框,它包含下面的属性:

  • name属性用来为该控件定义一个名称标识。
  • size属性,如果select元素被呈现为列表框, 这个属数量。如果可选项多于这个数量,就会出现垂直滚动条。如果没有定义这个属性,select元素就被呈现为菜单。
  • multiple属性,当设定时,这个逻辑值允许同时选择多个项。 而在没有设定时,select元素只允许选择单个选项。典型地,可视用户浏览器以列表框渲染多选元素,而以下拉框渲染单选元素。

select元素建立一个可被用户选择的选项列表,每个select元素必须包含至少一个选项,一个选项通过一个option元素来指定。

option 元素

option元素的使用类似于label 元素,但它可以有一个 slected 属性,当该属性的值被设置为selected 时,表示该项被选中。
option元素的value 属性定义控件的初始值,如果定义该属性,初始值就是option元素的内容。

<select name="select" size="size" multiple= "multiple">
  <option selected="selected">Item 1</option>
  <option selected="selected">Item 2</option>       
  <optionselected="selected">Item 3</option>
  <option selected="se lected">Item 4</option>
</select>
成组选项

使用optgroup元素,可以将select 元素中的选项进行逻辑分组。optgroup元素必须在select元素中直接指定,不允许嵌套,这意味着不能进行二级分组。使用该元素的label 属性可以定义分组显示的标签名,但是标签名不能被当作选择项。
例如下面的代码,演示了如何在组合框和列表框中分组选项:

<select>
  <optgroup label=" 大洋">
    <option>太平洋</option>
    <option>大西洋</option>
    <option>印度洋</option>
    <option>北冰洋</option>
  </optgroup>
  <optgroup label=" 大海"> .
    <option>东海</option>
    <option>黄海</option>
    <option>南海</option>
  </optgroup>
</select>
创建多行文本框(textarea元素)

基本语法格式如下:

<textarea name="xxx" cols="n" rows="n" wrap="off|hard|soft">
...
</textarea>

textarea元素属性及其功能描述:

属性 属性值 功能描述
name 字符串 定义控件名称
rows 字符数字 定义控制可视化文本行数
cols 字符数字 定义可视字符的宽度
wrap off
soft
hard
定义是否自动换行
soft表示自动软换行
hard表示自动硬换行

输入框的选项列表

datalist元素定义输入框的选项列表,列表是通过datalist内的option元素创建的。如需要把datalist绑定到输入框,则用输入框的list 属性引用datalist 的id,例如:

<input type="url" list="url_list" name="link">
<datalist id="url_list">
  <option label="A" value="http://www.a.com">
  <option label="B" value="http://www.b.com">
  <option label="C" value="http://www.c.com">
</datalist>

密钥对生成器

keygen元素的作用是提供一种验证用户的可靠方法。keygen元素是密钥对生成器,当提交表单时,会生成两个键, 一个是私钥,一个是公钥。
私钥(private key)存储于客户端,公钥(public key)则被发送到服务器。公钥可用于之后验证用户的客户端证书。

<form action="myform.asp" method= "get">
  用户名: <input type="text" name="user_ name"><br>
  加密: <keygen name= "security">
  <input type="submit">
</form>

输出结果控件

output元素用于不同类型的输出,如计算结果或脚本输出。
output的属性及其功能描述:

属性 描述
for element_id 描述计算中使用的元素与计算结果之间的关系。
form form_id 定义输入字段所属的一个或多个表单。
name name 定义对象的唯一名称(表单提交时使用)。

例:

<form oninput="x.value=parseInt(a.value)+parseInt(b.value)">0
  <input type="range" id="a" value="50">100
  +<input type="number" id="b" value="50">
  =<output name="x" for="a b"></output>
</form>

运行进度条控件

progress元素定义运行中的进度,例如下面代码,如果浏览器不能呈现该元素,就显示元素内部内容:

<progress max="100" value="80">
   <span id="objprogress">80</span>%
</progress>

等级标量控件

meter元素用来表示范围已知且可度量的等级标量或分数值,定义如下:。

<meter value="90" max="100" min="0" low="40" high="80" optimum="100"></meter>

meter的属性及其功能描述:

属性 描述
form form_id 规定 <meter> 元素所属的一个或多个表单。
high number 规定被视作高的值的范围。
low number 规定被视作低的值的范围。
max number 规定范围的最大值。
min number 规定范围的最小值。
optimum number 规定度量的优化值。
value number 必需。规定度量的当前值。

为表单添加结构(fieldset元素和legend元素)

fieldset元素和legend元素一般 是配合使用。fieldset 元素可以包含其他的表单控件,在这些表单控件周围画一一个方框,而legend元素可以显示-一个标志标签说明被包含的这些表单控件。这两个元素配合,也就是将一些表 单控件分组,从而可以更有效地显示信息。基本语法格式如下:

<fieldset>
  <legend>表单集说明标签</legend>
  ...其他表单控件元素...
</fieldset>

显示结果如下:


并且,一个表单内可以使用多个fieldset元素(包含legend元素)来定义表单集。也可以单独使用fieldset元素,即在表单控件周围画一一个方框,而不显示标志标签。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容