HTML中的表单(超详细)
一、表单
1.语法
<!-- action:提交的地方 method:提交的方式(get会显示,post不会)
-->
<form action="#" method="get"><p>名字:<input name="name" type="text"/></p><p>密码:<input type="password" name="pwd" id=""></p><p><input type="submit" value="提交"><input type="reset" value="重置"></p>
</form>
在实际的网页开发中通常采用post方式提交表单中的数据
2.表单元素格式
<!-- 基本语法 -->
<input type="input元素类型" name="input元素名称" value="input元素的默认值" />
| 属性 | 说明 |
|---|---|
| type | 指定元素的类型。text、password、checkbox、radio、submit、reset、file、hidden、image和button。默认值是text。 |
| name | 指定表单元素的名称 |
| value | 元素的默认值,type为radio的时候必须指定一个值 |
| size | 指定表单元素的初始宽度。当type为text或password的时候,表单元素的大小是以字符为单位。对于其他类型,宽度是以像素为单位 |
| maxlength | type为text或password的时候,表示输入的最大字符数 |
| checked | type为radio或checkbox的时候,指定按钮是否被选中 |
3.表单元素
3.1文本框
<input name="name" type="text" value="蔡徐坤" size="3" maxlength="3"/>
3.2密码框
<input type="password" name="pwd" value="123" size="13" maxlength="13">
3.3单选按钮
<p>性别:<input type="radio" name="gender" value="男">男<input type="radio" name="gender" value="女" checked>女
</p>
radio:单选按钮
name:如果是一组,那么取相同的name
对于radio,value是必须的
checked:单选按钮默认选中的状态
3.4复选框
<p>爱好:<input type="checkbox" name="hob" value="sports"/>运动<input type="checkbox" name="hob" value="talk" checked/>聊天<input type="checkbox" name="hob" value="play"/>玩游戏
</p>
checkbox:复选框
name:一组复选框有相同的name
value:值
checked:复选框默认选中状态
3.5列表框(下拉列表框)
<p>年龄:<select name="age"><option value="18">18岁</option><option value="19" selected = "selected">19岁</option><option value="20">20岁</option></select>
</p>
select:列表框
option:选项
value:表单提交的选项的值,如果不写默认提交option中的类容
selected:默认选中项
3.6按钮
图片按钮
<p><input type="submit" value="提交"><input type="reset" value="重置">
</p>
<p><input type="image" src="images/btn.png"><input type="button" value="普通按钮">
</p>
submit:提交按钮
reset:表单重置按钮
image:图片提交按钮
button:普通按钮,天生不具备任何功能,可通过js赋予功能
3.7多行文本域
<p>个人简介:<textarea cols="30" rows="10" name="person">文本内容</textarea>
</p>
textarea:多行文本域
cols:显示的列数
rows:显示的行数
3.8文件域
<form action="#" method="get" enctype="multipart/form-data"><p>头像:<input type="file" name="files"></p>
</form>
file:文件域
enctype=“multipart/form-data”:如果要上传文件必须加。它表示表单编码属性
3.9邮箱
<p>邮箱:<input type="email" name="email" id="">
</p>
type如果指定是email,会自动验证email地址格式是否正确
3.10网址
<p>个人网站:<input type="url" name="net">
</p>
type指定是url,会自动验证url地址格式是否正确
3.11数字
<p>年龄:<input type="number" name="myage" min="0" max="10" step="2">
</p>
number:表示是数字输入框
min:最小值
max:最大值
step:步进(每次加/减多少)
3.12滑块
<p>请输入数字:<input type="range" name="range1" min="0" max="10" step="2">
</p>
range:滑块
min:允许的最小值
max:允许的最大值
step:合法的数字间隔
3.13搜索框
<form action="#" method="get"><p>请输入搜索的关键字:<input type="search" name="sousuo"><input type="submit" value="搜索"></p>
</form>
search
4.表单的高级应用
4.1隐藏域
表单在提交的时候需要提交,但是又不希望被用户看到,这样就需要用到隐藏域
<input type="hidden" name="id" value="123">
type=hidden
4.2只读
姓名:<input type="text" name="name" id="" value="蔡徐坤" readonly>
readonly:只允许读,不允许修改
4.3禁用
<input type="submit" value="提交" disabled>
disabled:表示禁用
5.表单元素的标注
增强鼠标的可用性
自动将焦点转移到与该标注相关的表单元素上
<label>标签的for属性应该与表单控件的id属性值相同,以此来建立<label>与表单控件之间的关联。如果<label>元素直接包含了表单控件(如<input>),则不需要使用for属性,因为关联是隐式的。
示例1:使用for属性
<p><label for="age">年龄:</label><input type="number" name="age" id="age">
</p>示例2:隐式关联
<form> <label> 邮箱: <input type="email" id="email" name="email"> </label> <br><br> <!-- 其他的表单元素 -->
</form>
6.表单初级验证
6.1为什么要进行表单验证
表单验证好处:
减轻服务器的压力
保证数据的可行性和安全性
6.2初级方法
6.2.1placeholder
- input类型的文本框提供一种提示
- 可以描述文本框期待用户输入何种内容
- 提示语默认显示,当文本输入框中输入内容的时候,提示语消失
- 适合于input标签:text、search、url、email和password等类型
<p>用户名:<input type="text" name="name" id="" placeholder="请输入用户名,只能中文">
</p>
6.2.2required
- 规定文本框填写内容不能为空,否则不允许用户提交表单
- 适合于input标签:text、search、url、emial、password、number、checkbox、radio、file等类型
<p>用户名:<input type="text" name="name" id="" placeholder="请输入用户名,只能字母" required>
</p>
6.2.3pattern
用户输入内容必须符合正则表达式所指的规则,否则不能提交表单
<!-- pattern:规则,要求我们写正则表达式[]表示一位,中间缩写的内容可以任选一个是合法的0-9 表示从0到9 a-z:从小写a到小写z[xx]{n} 他表示前面的一位按照规则重复n次用户名只能是数字、字母或下划线,并且长度是3到15[xxx]{1,}至少重复一次,无上限--><form action="#" method="get"><p>用户名:<input type="text" name="name" id="" placeholder="请输入用户名" required pattern="[a-zA-Z0-9_]{3,15}"></p><p>密码:<input type="password" name="pwd" id="" placeholder="请输入密码"></p><p>手机号:<input type="text" name="tel" required pattern="1[3578][0-9]{9}"></p><p><input type="submit" value="提交"></p></form>
二、总结

相关文章:
HTML中的表单(超详细)
一、表单 1.语法 <!-- action:提交的地方 method:提交的方式(get会显示,post不会) --> <form action"#" method"get"><p>名字:<input name"name" ty…...
初识 C 语言(一)
目录 一、 第一个 C 程序1. printf() 函数和 stdio.h 头文件2. main() 函数和 return 语句 二、类型和变量1. C 语言中的基本类型2. 变量的创建和命名规则3. 类型和变量的大小 三、printf() 函数和 scanf() 函数1. printf() 函数的使用2. 各种类型的输出格式3. scanf() 函数的使…...
LiveNVR监控流媒体Onvif/RTSP功能-支持电子放大拉框放大直播视频拉框放大录像视频流拉框放大电子放大
LiveNVR监控流媒体Onvif/RTSP功能-支持电子放大拉框放大直播视频拉框放大录像视频流拉框放大电子放大 1、视频广场2、录像回看3、RTSP/HLS/FLV/RTMP拉流Onvif流媒体服务 1、视频广场 视频广场 -》播放 ,左键单击可以拉取矩形框,放大选中的范围ÿ…...
element ui中当el-dialog需要做全屏时,.fullscreen样式修改问题
element ui 饿了么UI中el-dialog样式修改问题 场景解决方法就是:去掉底部样式中的scoped,然后再进行页面级样式的更改即可。 场景 最近在使用element-ui时,使用到了弹窗组件: element-ui 官网链接地址: element-ui 官网链接地址…...
C++的明星之我是类001
文章目录 类类定义格式访问限定符类域 实例化实例化概念对象大小 this指针两道nt题目题目一题目二 C和C语言实现stack对比 类 类定义格式 新增一个关键字class,后加上类的名字,{}中为类的主体,类中的函数称为类的⽅法或者成员函数定义在类⾯…...
深度学习与应用:行人跟踪
**实验 深度学习与应用:行人跟踪 ** ------ **1、 实验目的** ------ - 了解行人跟踪模型基础处理流程 - 熟悉行人跟踪模型的基本原理 - 掌握 行人跟踪模型的参数微调训练以及推理的能力 - 掌握行人跟踪模型对实际问题的应用能力,了解如何在特定的场景和…...
MySQL | DATE_ADD()函数
题1: 现在运营想要查看用户在某天刷题后第二天还会再来刷题的平均概率。请你取出相应数据。 示例:question_practice_detail iddevice_idquest_idresultdate12138111wrong2021-05-0323214112wrong2021-05-0933214113wrong2021-06-1546543111right2021…...
DVWA 靶场环境搭建
作者:程序那点事儿 日期:2024/09/15 09:30 什么是DVWA: 是OWSASP官方编写的PHP网站,包含了各种网站常见漏洞(漏洞靶场),可以学习攻击及修复方式。 PHP环境包含了,Windows/Apache/Mysql/Php g…...
Autosar学习----AUTOSAR_SWS_BSWGeneral(七)
💥💥🔍 🔍 欢迎来到本博客❤️❤️💥💥 🐡优势:❤️博客内容尽量做到通俗易懂,逻辑清晰。 ⛳️座右铭:恒心,耐心,静心。 ⛳️ 欢迎一起…...
自动化测试框架集成:将Selenium集成到pytest与unittest中
目录 引言 一、Selenium简介 二、Selenium与pytest的集成 1. 安装pytest和Selenium 2. 编写测试用例 3. 运行测试 三、Selenium与unittest的集成 1. 编写测试类 2. 运行测试 四、Selenium自动化测试的最佳实践 1. 使用Page Object模式 2. 合理利用等待机制 3. 跨浏…...
华为GaussDB数据库(单机版)在ARM环境下的安装指南
一、软件版本 机器配置:8核16G,CPU: Huawei Kunpeng 920 2.9GHz操作系统:EulerOS 2.8 64bit with ARM数据库版本:GaussDB Kernel 505.1.0 build 44f4fa53 二、部署流程 2.1 新建用户 ① 以omm用户为例,添加一个omm用…...
计算机网络笔记002
### 课堂讨论对话 **学生A**: 老师,计算机网络的组成是怎样的?🤔 **老师**: 非常好的问题!计算机网络主要由硬件、软件和通信协议三部分组成。我们先从硬件开始讨论吧。 **学生B**: 硬件包括哪些设备呢?ὠ…...
Unity 的Event的Use()方法
对于Event的Use方法,其在调用后将不会再判断同类型的事件 这种情况下,第二个MosueDown不会进入,因为已经Use 如果把Use注释掉 依旧能进入第二个MosueDown 也就是说当使用了Use方法,相同的事件类型不会进第二遍...
数据分析师之Excel数据清洗
前言 目前,掌握一定的Excel技能时,怎么通过自己的技能实现数据分析的操作,就需要进行具体项目的实战,本身数据分析这个行业是非常吃经验的,既然我们是小白入坑,就需要多做实战演练,才能够实际的…...
手机解压软件加密指南:让文件更安全
在数字化时代,文件加密对于保护个人隐私和敏感信息的重要性不言而喻。随着互联网的飞速发展,我们的生活和工作越来越依赖于数字设备和网络。 然而,这也带来了一系列的安全风险,如黑客攻击、数据泄露等。文件加密技术成为了保护我…...
python yield generator 详解
目录 generator基础 generator应用 generator基础应用 generator高级应用 注意事项: 正文 本文将由浅入深详细介绍yield以及generator,包括以下内容:什么generator,生成generator的方法,generator的特点&#…...
MATLAB矩阵下标引用
在MATLAB中,普通的二维数组元素的数字索引分为双下标索引和单下标索引。双下标索引是通过一个二元数组对来对应元素在矩阵中的行列位置,例如A(2,3)表示矩阵A中第2行第3列的元素。单下标索引的方式是采用列元素优先的原则,对m行n列的矩阵按列排…...
syn洪水攻击原理是什么
在网络世界中,正常的网络访问就像一场有序的对话。当我们访问网站时,客户端与服务器要进行 TCP 三次握手来建立连接。首先,客户端向服务器发送一个 SYN 包,请求建立连接,这就如同向服务器打招呼说“我想连接”…...
前缀和(4)_除自身以外数组的乘积
个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 前缀和(4)_除自身以外数组的乘积 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记,欢迎大家在评论区交流讨论💌 目录…...
第二十一节:学习Redis缓存数据库的Hash操作(自学Spring boot 3.x的第五天)
这节记录下Redis的Hash操作。主要是opsForHash方式和boundHashOps方式。 boundHashOps和opsForHash都是Spring Data Redis中用于操作Redis哈希数据结构的方法,但它们在使用方式和场景上存在一些区别。 boundHashOps 使用方式: boundHashOps方法通过Redi…...
【由浅入深探究langchain】第十七集-构建你的首个 RAG 知识库助手(从文档索引到检索增强生成)
前言在大语言模型(LLM)爆火的今天,我们常常会被 GPT 或 Claude 展现出的博学所惊叹。然而,当你试着问它“我公司昨晚新发布的财务报表数据是多少?”或者“我上周在笔记里写的某个私人计划是什么?”时&#…...
如何用零配置小熊猫Dev-C++在5分钟内开启C++编程:完整新手指南
如何用零配置小熊猫Dev-C在5分钟内开启C编程:完整新手指南 【免费下载链接】Dev-CPP A greatly improved Dev-Cpp 项目地址: https://gitcode.com/gh_mirrors/dev/Dev-CPP 对于C初学者来说,最大的障碍往往不是语法本身,而是复杂的环境…...
QuantsPlaybook因子测试框架深度剖析:量化因子评估的创新方法论
QuantsPlaybook因子测试框架深度剖析:量化因子评估的创新方法论 【免费下载链接】QuantsPlaybook 项目地址: https://gitcode.com/GitHub_Trending/qu/QuantsPlaybook 副标题:如何构建稳定有效的选股策略?从原理到实战的完整指南 量…...
利用快马AI快速生成n8n自动化工作流原型,十分钟搭建业务逻辑骨架
今天想和大家分享一个快速搭建n8n自动化工作流原型的经验。作为一个经常需要处理各种自动化流程的开发者,我发现用InsCode(快马)平台可以大大缩短从构思到实现的时间。 为什么选择n8n工作流原型 n8n作为开源自动化工具,最大的优势就是可视化工作流设计…...
uniapp 抖音生态集成实战:从授权登录到内容发布与社交分享
1. 为什么要在uniapp中集成抖音生态? 对于电商类或内容社区类的uniapp应用来说,抖音生态的集成价值主要体现在三个方面:流量获取、用户增长和内容传播。抖音作为国内最大的短视频平台之一,拥有庞大的用户群体和活跃的内容生态。通…...
WarcraftHelper:魔兽争霸3现代优化解决方案 - 突破兼容性壁垒,重焕经典游戏活力
WarcraftHelper:魔兽争霸3现代优化解决方案 - 突破兼容性壁垒,重焕经典游戏活力 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper …...
AMD ROCm:如何从零构建高性能GPU加速应用?
AMD ROCm:如何从零构建高性能GPU加速应用? 【免费下载链接】ROCm AMD ROCm™ Software - GitHub Home 项目地址: https://gitcode.com/GitHub_Trending/ro/ROCm AMD ROCm是一个完整的开源GPU计算平台,专为高性能计算和人工智能应用设计…...
基于AI的老照片修复技术实战指南:从算法原理到完整部署
基于AI的老照片修复技术实战指南:从算法原理到完整部署 【免费下载链接】Bringing-Old-Photos-Back-to-Life Bringing Old Photo Back to Life (CVPR 2020 oral) 项目地址: https://gitcode.com/gh_mirrors/br/Bringing-Old-Photos-Back-to-Life Bringing-Ol…...
告别纸上谈兵:在Multisim里调试交通灯仿真时,我踩过的这些坑希望你避开
告别纸上谈兵:在Multisim里调试交通灯仿真时,我踩过的这些坑希望你避开 第一次在Multisim里搭建完整的交通灯控制系统时,我以为只要按照教科书上的电路图连接好芯片和元件,仿真就能一帆风顺。但现实给了我当头一棒——数码管显示乱…...
Swin Transformer部署避坑指南:从环境搭建到性能翻倍的实战手册
Swin Transformer部署避坑指南:从环境搭建到性能翻倍的实战手册 【免费下载链接】Swin-Transformer This is an official implementation for "Swin Transformer: Hierarchical Vision Transformer using Shifted Windows". 项目地址: https://gitcode.…...
