HTML表单是网页与用户交互的关键组成部分,它允许用户输入数据并将数据提交到服务器进行处理。本文将全面详细地介绍HTML表单的各个方面,从基础元素到高级用法,并提供丰富的代码示例和中文注释,帮助你彻底掌握表单的使用。
表单由 <form> 元素定义,所有表单元素都必须放在 <form> 标签内。<form> 元素有两个关键属性:
<form action="process_form.php" method="POST">
<!-- 表单元素放在这里 -->
</form>
注释: 上面的代码创建了一个表单,当用户提交表单时,数据将通过 POST 方法发送到 process_form.php 文件进行处理。
<label> 标签用于为表单元素定义标签(标题)。将 <label> 与表单元素关联起来,可以提高用户体验。点击 <label> 会自动将焦点移动到关联的表单元素上。关联方法有两种:
<label for="username">用户名:</label> <input type="text" id="username" name="username">
<label>密码: <input type="password" name="password"></label>
<input> 元素是最常用的表单元素,它根据 type 属性的不同,呈现各种类型的输入控件。name 属性是必须的,用于标识表单数据字段的名称,服务器端可以通过 name 属性获取对应的值。
<label for="username">用户名:</label> <input type="text" id="username" name="username" placeholder="请输入用户名">
<label for="password">密码:</label> <input type="password" id="password" name="password">
<input type="submit" value="提交">
<select> 元素用于创建下拉列表,<option> 元素定义列表中的选项。multiple 属性可以让 <select> 支持多选。
<label for="city">城市:</label>
<select id="city" name="city">
<option value="beijing">北京</option>
<option value="shanghai" selected>上海</option> <!--- selected 属性设置默认选中项 -->
<option value="guangzhou">广州</option>
</select>
<textarea> 元素用于多行文本输入。rows 和 cols 属性分别设置行数和列数。
<label for="message">留言:</label> <textarea id="message" name="message" rows="5" cols="30"></textarea>
<button> 元素可以创建更灵活的按钮,它比 <input type="submit"> 更强大,因为可以在 <button> 标签内添加内容,例如图像和文本格式。
<button type="submit">提交</button>
<fieldset> 元素用于将相关的表单元素分组,<legend> 元素为 <fieldset> 定义标题。
<fieldset>
<legend>个人信息</legend>
<label for="name">姓名:</label> <input type="text" id="name" name="name"><br>
<label for="email">邮箱:</label> <input type="email" id="email" name="email">
</fieldset>
除了 action 和 method 属性外,<form> 元素还有其他一些常用的属性:
HTML5 提供了丰富的表单验证功能,例如:
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>HTML-表单</title>
</head>
<body>
<div align="center"">
<!-- value: 表单项提交的值 -->
<form action="" method=" post">
姓名: <input type="text" name="name"> <br><br>
密码: <input type="password" name="password"> <br><br>
性别: <input type="radio" name="gender" value="1"> 男
<label><input type="radio" name="gender" value="2"> 女 </label> <br><br>
爱好: <label><input type="checkbox" name="hobby" value="java"> java </label>
<label><input type="checkbox" name="hobby" value="game"> game </label>
<label><input type="checkbox" name="hobby" value="sing"> sing </label> <br><br>
图像: <input type="file" name="image"> <br><br>
生日: <input type="date" name="birthday"> <br><br>
时间: <input type="time" name="time"> <br><br>
日期时间: <input type="datetime-local" name="datetime"> <br><br>
邮箱: <input type="email" name="email"> <br><br>
年龄: <input type="number" name="age"> <br><br>
学历: <select name="degree">
<option value="">----------- 请选择 -----------</option>
<option value="1">大专</option>
<option value="2">本科</option>
<option value="3">硕士</option>
<option value="4">博士</option>
</select> <br><br>
描述: <textarea name="description" cols="30" rows="10"></textarea> <br><br>
<input type="hidden" name="id" value="1">
<!-- 表单常见按钮 -->
<input type="button" value="按钮">
<input type="reset" value="重置">
<input type="submit" value="提交">
<br>
</form>
</div>
</body>
</html>
运行:
本文详细介绍了 HTML 表单的各个方面,包括基本结构、常用元素、表单属性和表单验证。通过学习本文,你应该能够熟练地创建和使用 HTML 表单,并实现各种用户交互功能。
学习网站推荐:面向开发者的 Web 技术 | MDN