Web 表单构建块

本模块提供一系列文章,帮助您掌握 Web 表单的基本知识。Web 表单是与用户交互的非常强大的工具——最常见的是用于收集用户数据或允许他们控制用户界面。但是,由于历史和技术原因,并不总是清楚如何充分利用它们。在下面列出的文章中,我们将涵盖 Web 表单的所有基本方面,包括标记其 HTML 结构、样式化表单控件、验证表单数据以及将数据提交到服务器。

先决条件

在开始本模块之前,您至少应完成我们的 HTML 简介。此时,您应该发现 入门指南 容易理解,并且能够使用我们的 基本原生表单控件 指南。

但是,掌握表单不仅仅需要 HTML 知识——您还需要学习一些特定的技术来样式化表单控件,并且需要一些脚本知识来处理诸如验证和创建自定义表单控件之类的事情。因此,在查看下面列出的其他部分之前,我们建议您先去学习一些 CSSJavaScript

上面的文字很好地说明了为什么我们将 Web 表单放入其自己的独立模块中,而不是试图将其中的部分混合到 HTML、CSS 和 JavaScript 主题区域中——表单元素比大多数其他 HTML 元素更复杂,并且它们还需要紧密结合相关的 CSS 和 JavaScript 技术才能充分发挥其作用。

注意:如果您在无法创建自己文件的计算机/平板电脑/其他设备上工作,您可以尝试在在线编码程序(如 JSBinGlitch)中尝试(大部分)代码示例。

入门指南

您的第一个表单

我们系列中的第一篇文章提供了您创建 Web 表单的最初体验,包括设计简单的表单、使用正确的 HTML 元素实现它、通过 CSS 添加一些非常简单的样式以及数据如何发送到服务器。

如何构建 Web 表单

在掌握了基础知识之后,我们现在将更详细地了解用于为表单的不同部分提供结构和含义的元素。

不同的表单控件

基本原生表单控件

我们从详细了解原始 HTML <input> 类型开始本节,了解可用于收集不同类型数据的选项。

HTML5 输入类型

在这里,我们继续深入研究 <input> 元素,查看 HTML5 发布时提供的其他输入类型以及它们提供的各种 UI 控件和数据收集增强功能。此外,我们还介绍了 <output> 元素。

其他表单控件

接下来,我们将查看所有非 <input> 表单控件和相关工具,例如 <select><textarea><meter><progress>

表单样式指南

样式化 Web 表单

本文档介绍了如何使用 CSS 样式化表单,包括您可能需要了解的所有基本样式化任务。

高级表单样式

在这里,我们查看了一些更高级的表单样式化技术,这些技术需要在尝试处理一些难以样式化的表单元素时使用。

UI 伪类

UI 伪类的介绍,使 HTML 表单控件能够根据其当前状态进行定位。

验证和提交表单数据

客户端表单验证

仅发送数据是不够的——我们还需要确保用户输入表单的数据格式正确,以便成功处理它,并且不会破坏我们的应用程序。我们还想帮助我们的用户正确填写我们的表单,并且在尝试使用我们的应用程序时不会感到沮丧。表单验证有助于我们实现这些目标——本文档告诉您需要了解的内容。

发送表单数据

本文档介绍了用户提交表单时会发生什么——数据去哪里,以及我们到达那里后如何处理它?我们还介绍了与发送表单数据相关的一些安全问题。

高级文章

以下文章对于学习路径并非必不可少,但当您掌握了上述技术并希望了解更多信息时,它们将被证明是有趣且有用的。

如何构建自定义表单控件

在某些情况下,原生的表单小部件无法满足您的需求,例如由于样式或功能限制。在这种情况下,您可能需要使用原始 HTML 构建自己的表单小部件。本文将解释如何执行此操作以及在执行此操作时需要注意的事项,并提供一个实际案例研究。

通过 JavaScript 发送表单

本文探讨了如何使用表单来组装 HTTP 请求并通过自定义 JavaScript 发送它,而不是使用标准表单提交。它还探讨了为什么要执行此操作以及执行此操作的影响。(另请参见 使用 FormData 对象。)

表单控件的 CSS 属性兼容性表

这篇最后的文章提供了一个方便的参考,您可以通过它查找哪些 CSS 属性与哪些表单元素兼容。

另请参阅