表单是PHP程序中最常使用的收集站点访问者信息的数据输入界面。通过表单浏览器获取用户的输入数据,并传送给Web服务器的脚本程序中,以各种不同的方式进行处理。在表单中提供了多种输入方式,包括文本输入域、单选或多选按钮、下拉式列表域等。表单是网页上由<form>标签定义的一个特定区域,而表单的各种输入域可以由<input>、<select>和<textarea> 3个标签定义。

1  表单标签<form>

一个表单用<form></form>标签来创建,即定义表单的开始和结束位置,在开始和结束标签之间的一切定义都属于表单的内容。单击提交按钮时,提交的也是表单范围之内的内容。另外,在<form>标签中需要携带表单的相关信息,例如处理表单的脚本程序的位置、提交表单的方法等。这些信息对于浏览者是不可见的,但对于处理表单却有着决定性的作用。该标签的常用属性如表1所示。

表1  HTML表单标签中常用的属性

<form>标签中必须加action属性,并且不能为空。例如,<form action="login.php" method="post">。如果不需要使用action属性,也必须定义:<form action="no">。

2  文本域和密码域

在<form>标签内定义的<input>标签具有重要的地位,该标签是单个标签,没有结束标记。<input type="">标签用来定义一个用户输入区,用户可以在其中输入信息。<input>标签中共提供了9种类型的输入区域,具体是哪一种类型由type属性来决定。文本和密码输入域是一个单行文本框,它们基本相似,唯一不同的是,用户在密码域中输入的字符并不以原样显示,而是将每个字符用“*”代替。文本和密码输入域的基本语法格式如下:

<input  type="text" name="field_name" value="field_value" size="n" maxlength="n">       <!-- 输入域 -->

<input  type="password" name="field_name" value="field_value" size="n" maxlength="n">   <!-- 密码域 -->

这些属性的含义如表2所示。

表2  HTML中<input>标签的常用属性z

3  提交、重置和普通按钮

在<input>标签中,当type属性值为“submit”时,表示这是一个提交按钮,单击提交按钮后,可以实现表单内容的提交;当type属性为“reset”时,表示这是一个重置按钮,单击重置按钮后,表单的内容将恢复为默认值;当type属性为“button”时,表示这是一个普通按钮,并不实现任何功能,需要和JavaScript等脚本语言一起使用。button按钮必须定义在form之间,否则Netscape浏览器不支持。这3种按钮的基本语法格式如下:

<input  type="submit" name="field_name" value="field_value">  <!-- 提交按钮 -->

<input  type="reset" name="field_name" value="field_value">  <!-- 重置按钮 -->

<input  type="button" name="field_name" value="field_value">  <!-- 普通按钮 -->

4  单选按钮和复选框

单选按钮和复选框都有“选中”和“未选中”两种状态。同一组单选按钮如果有多个选择框,则选择框之间是相互排斥的,只允许用户选择其中的一个。复选框和单选按钮的区别是,复选框允许用户同时选中同一表单中的多个或全部选项,当然,也可以只选其中的一个选项。它们都是只有在“选中”时,数据才能被提交到服务器端。其语法格式如下所示:

<input  type="radio" name="field_name" value="field_value" checked>  <!-- 单选按钮 -->

<input  type="checkbox" name="field_name" value="field_value" checked> <!-- 复选框 -->

 

在<input>标签中,当type属性值为“checkbox”时,表示这是一个复选框输入域;当type属性值为“radio”时,则表示这是一个单选按钮输入域。但在同一组中的多个单选按钮名称必须相同,它们之间才能相互排斥。单选按钮和复选框都可以通过checked属性设置为选中状态。

IT兄弟连 HTML5教程 HTML5表单 HTML表单设计1的更多相关文章

  1. IT兄弟连 HTML5教程 HTML5表单 小结及习题

    小结 HTML表单提交的方法有get方法和post方法,get方法的作用是从指定的资源请求数据,post方法的作用是向指定的资源提交要被处理的数据.HTML表单一直都是Web的核心技术之一,有了它我们 ...

  2. IT兄弟连 HTML5教程 HTML5表单 H5表单提交综合实例

    这里我们创建一个填写个人基本信息的表单,使用了表单元素有<input>输入框.<datalist>选项列表.<textarea>文本框,通用的表单输入类型有text ...

  3. IT兄弟连 HTML5教程 HTML5表单 新增的表单属性1

    HTML5 Input表单为<form>和<input>标签添加了几个新属性,属性如表1. 1  autocomplete属性 autocomplete属性规定form或inp ...

  4. IT兄弟连 HTML5教程 HTML5表单 多样的输入类型1

    HTML5拥有多个新的表单输入类型,这些新特性提供了更好的输入控制和验证.并不是所有的主浏览器都支持新的input类型,不过我们可以在所有的主浏览器中使用它们,即使不被支持,仍然可以显示为常规的文本域 ...

  5. IT兄弟连 HTML5教程 HTML5表单 HTML5新增表单元素

    HTML5有一些新的表单元素:<datalist>.<keygen>.<output>.不是所有的浏览器都支持HTML5新的表单元素,但即使浏览器不支持该表单属性, ...

  6. IT兄弟连 HTML5教程 HTML5表单 HTML表单中的get和post方法

    指引 表单在网页应用中十分重要,基本上任何一个网站都必须使用到表单元素,所以表单的美观和易于交互对于网站设计就变得十分重要.HTML5对目前Web表单进行了全面提升,使得我们使用表单更加智能.它在保持 ...

  7. IT兄弟连 HTML5教程 HTML5表单 多样的输入类型2

    4  range range类型用于包含一定范围内数字值的输入域,跟number一样,我们还可以对数值设置限定,range类型显示为滑动条用法如下: 上述代码使用了range类型输入框,为该类型设置了 ...

  8. IT兄弟连 HTML5教程 HTML5表单 新增的表单属性3

    9  novalidate novalidate是属性规定在提交表单时不应该验证form和input域.novalidate属性适用于的<input>类型有:text.search.url ...

  9. IT兄弟连 HTML5教程 HTML5表单 HTML表单设计2

    5  隐藏域 隐藏域不会在表单中显示.如果需要在页面之间传递重要数据,则在<input>标签中设置type属性值为“hidden”建立一个隐藏域.name和value属性是必需的,用来表示 ...

随机推荐

  1. 【Maven】聚合

    [Maven]聚合 转载: 使用聚合一次能为多个 maven 项目执行命令,而不用到每一个项目下去执行命令. 聚合 pom 的特殊之处 1.packaging 配置 pom <packaging ...

  2. SQL-SQL查询检索阶段二

    一 前提准备 先声明一下,下面的库表只是简易的学习示例,不是生产的设计,不要深究,此文我们的目的是学习sql的检索不是库表设计:初学者最好跟着作者的文章一步一步敲一遍,如果没有使用过sql的可以查阅作 ...

  3. 4、看源码MVC Controller如何调用Action

    Controller继承ControllrBase,ControllerBase继承IController,而IController里只有一个Execute方法 1.ControllrBase里的Ex ...

  4. WPF布局容器

    1.StackPanel:堆栈面板,通过Orientation属性设置子元素的布局排列方向为“Vertical”(垂直)和“Horizontal”(水平),不写其默认值为“Vertical”,当设置为 ...

  5. linux 常用Mysql脚本命令

    常用命令 无需系统Root权限 新数据库设置Root密码 visible > mysql -uroot -p visible > mysqladmin -uroot password &q ...

  6. CMake工程找不到相应的cuDNN版本的问题

    (1) 去官网下载相应的版本,因为电脑之前安装的是 CUDA8. ,找跟 CUDA 版本兼容的 cuDNN 下载即可,我选择的是 cuDNN v7.(Deb) 和  cuDNN v7.1.4 Deve ...

  7. 备份下ESP8266的AT指令集手册和用例手册中文版,准备为V7做几个ESP8266的例子

    指令集手册:https://files.cnblogs.com/files/armfly/4a-esp8266_at_instruction_set_cn.rar 用例手册: https://file ...

  8. redis集群搭建及常用操作

    前言: Redis 是一个高性能的key-value数据库. redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用.它提供 ...

  9. 激光炸弹 HYSBZ - 1218

    激光炸弹 HYSBZ - 1218 Time limit:10000 ms Memory limit:165888 kB OS:Linux Source:HNOI2003 一种新型的激光炸弹,可以摧毁 ...

  10. weed3-2.1.开始纯java使用

    Weed3 一个微型ORM框架(只有0.1Mb哦) 源码:https://github.com/noear/weed3 源码:https://gitee.com/noear/weed3 纯java使用 ...