【前端就业课 第一阶段】HTML5 零基础到实战(八)表单详解

注意:手机(APP)打开,内容显示更佳,不会的私聊博主即可
想要拿代码或加入学习计划(** 博主会监督你并且教你写文章 **)的拉到最下面(PC端Web打开)加博主即可,目录也在最下面。

参加1_bit博主前端学习计划发文时在头部记得加上本专栏链接,示例如下:

我已加入 1_bit 博主的免费前端 站起来 学习计划,专栏链接:https://blog.csdn.net/a757291228/category_11609526.html

一、表单的使用

1.1 表单基础

🐶1_bit:这一节咱们开始表单的学习。

👸小媛:表单是啥?

🐶1_bit:表单其实咱们平常都用过,例如你在一个网页中输入一些内容,然后用过注册,信息上传,其实在很多网页之中这都是使用表单进行制作的。

👸小媛:哇,意思说这一节说到核心内容了?

🐶1_bit:哈哈哈,其实每一节的内容都很核心,所以需要认真学习呢。那咱们现在就开始学习表单吧。

👸小媛:好勒。

🐶1_bit:在 HTML 中,表单的标签是 form 标签,例如如下代码示例就是一个表单。

<form></form>

👸小媛:那他们之间要写什么内容呢?

🐶1_bit:先不急,咱们需要先搞懂的还有一个重要的属性,那就是 action,action 属性表示当前表单需要提交到的一个地址。

👸小媛:这个地址是什么意思呢?

🐶1_bit:在咱们的 web 开发中,网页只是给予用户呈现的一个页面,例如一个注册页面,在这个页面之中,用户需要填写对应的信息点击提交完成注册,当点击提交之后,这个页面的将会把信息给予到 action 属性所对应的一个 url(链接)之中。

👸小媛:所以说 action 后面就是填写一个链接咯?

🐶1_bit:对的,由于咱们目前没有一个地址给予测试,咱们可以写成如下示例。

<form action=""></form>

👸小媛:明白了。

🐶1_bit:现在咱们还需要给予这个表单一个 name 属性,例如如下示例。

<form name="register" action=""></form>

👸小媛:如果不给这个 name 属性呢?

🐶1_bit:当然你可以给或者不给,但是建议给,因为你所提交到后台(action 中的 url 地址 )时,你的信息会有一定的标记,当然有些时候不给也没事,但是为了标准,防止弄错,所以需要给一个name,这样就可以通过你给的name 值区分你这个表单提交的是什么了;像在如上示例,给予了一个 register 作为名称,那么就知道这个表单中的信息是用于注册的。

👸小媛:明白了。

🐶1_bit:表单还需要给予一个属性,那就是 method 属性,这个属性表示了这个表单提交数据到后台时所采用的方式,可以选择 get 或者 post。

👸小媛:get 和 post 是啥?

🐶1_bit:这是两种数据提交的方式,你也可以认为一种数据提交的方式是 get,另外一种数据提交的方式是 post,这两种数据提交方式默认为 get,但是 get 相比 post 提交方式来说并没有 post 那么安全;当然,使用哪种数据提交的方式一般是后端程序员会告诉你,这个你不用着急。

👸小媛:那怎么写呢?

🐶1_bit:如下就是使用 method 数据提交的示例。

<form name="register" action="" method="post"></form>

🐶1_bit:表单还可以用于上传文件,这个时候就需要有一个属性叫做 enctype,如果你需要上传文件(包括图片),必须设置 enctype 属性为 enctype=“multipart/form-data”,例如如下示例。

<form name="register" action="" method="post" enctype="multipart/form-data"></form>

👸小媛:明白了,那这个 enctype 还有别的属性吗?这个属性是自己随便写的还是?

🐶1_bit:enctype 自带了 3 种属性,分别是 text/plain 、 multipart/form-data 、application/x-www-form-urlencoded ,默认是 application/x-www-form-urlencoded;其中 text/plain 是表示纯文本数据提交、multipart/form-data就是表示有文件数据上传 、 application/x-www-form-urlencoded 默认。

👸小媛:意思说我正常情况下默认就可以不用动了对吧。

🐶1_bit:是这样的。其中 from 表单还可以添加一个 target 属性,点击提交按钮后可以选择新窗口打开还是当前页面打开,这个前几节已经讲过,在此就不再进行赘述了。

👸小媛:好,明白了。

二、表单控件

2.1 文本输入框

🐶1_bit:那么接下来咱们就看看咱们表单之中有哪些控件。

👸小媛:啥是控件?

🐶1_bit:你可以理解为表单之中的元素,当然理解有点片面,不过也没啥问题。

👸小媛:哈哈哈,你意思就是说“现在说了我也不明白的意思”。

🐶1_bit:哈哈,先这样解释后面你就懂了。表单中的元素有多种,例如文本输入框、选项、图片上传等。一个简单的文本输入的表单示例如下。

<form name="register" action="" method="post" enctype="application/x-www-form-urlencoded"><input name="username" type="text" />
</form>

👸小媛:咦?其中的 input 就是控件吗?

🐶1_bit:对的,input 就是控件,在网页中显示如下。

在这里插入图片描述
👸小媛:哈哈哈,这阵的是一个文本框呀。

🐶1_bit:对的,还有一个需要注意,input 标签中的 name 建议一定要给予,当你在这个 input 标签所显示在页面的输入框中输入内容后,点击提交的内容进入后台时,需要通过你输入的name 值进行值的判断,也就是说,你输入的 name 值用于标识当前数据是什么内容。在当前示例中,我所示例的 name 值为 username,也就是说当前的 username 这个名称与这个输入框的值进行标记。

👸小媛:原来如此,明白了。

🐶1_bit:还有一个也需要注意,其中的 type 属性表示当前控件的类型,你写成 text 那么就对应的是文本输入框类型。

👸小媛:明白了,那还可以选择什么类型的控件呢?

🐶1_bit:先别急,咱们还可以为这个文本设置对应的属性值,例如。

<form name="register" action="" method="post" enctype="application/x-www-form-urlencoded"><input size="30" placeholder="请输入内容" name="text1" type="text" /><input value="默认值" placeholder="请输入不大于3位的内容" name="text2" type="text" /><input placeholder="请输入不大于6位的密码" maxlength="6" name="pw" type="password" />
</form>

👸小媛:哇,这些都有什么用呢?

🐶1_bit:以上示例中,size 属性表示了当前这个 input 的长度、 placeholder 表示提示语、maxlenght 表示了当前所能填写内容的最大长度、value 表示了表单的默认值、type=“password” 表示了当前表单输入为密码。

👸小媛:明白了,输入值也是看不见的样子。
在这里插入图片描述

2.2 radio 单选项

🐶1_bit:那咱们接下来再看看 radio 类型,也就是单选项。

<form name="register" action="" method="post" enctype="application/x-www-form-urlencoded"><input size="30" placeholder="请输入内容" name="text1" type="text" /><input value="默认值" placeholder="请输入不大于3位的内容" name="text2" type="text" /><input placeholder="请输入不大于6位的密码" maxlength="6" name="pw" type="password" /><br/><input name="radio1" type="radio" value="mianbao" /> 面包 <br/><input name="radiox1" type="radio" value="baozi" /> 包子 <br/><input name="radio1" type="radio" value="shengjianbao" /> 生煎包 <br/><input name="radio2" type="radio" value="xigua" /> 西瓜 <br/><input name="radio2" type="radio" value="yumi" /> 玉米 <br/><input name="radio2" type="radio" value="danbaizhi" /> 蛋白质 <br/>
</form>

🐶1_bit:以上内容中使用 name 值用于区分不同的单选项组,其中相同的name 值 name="radio1"为一组,另一组为 name="radio2",没组内容为单选项。

👸小媛:真的耶,选了一下确实只能选择一个。
在这里插入图片描述
👸小媛:那那个vaule 是啥呢?

🐶1_bit:这个 value 就表示你选择的每一项的值,当表单提交后就会提交你选中的 value 值。

👸小媛:原来如此。

2.3 复选项

🐶1_bit:既然有了单选项那么必然会有复选项,例如如下示例。

<form name="register" action="" method="post" enctype="application/x-www-form-urlencoded"><input size="30" placeholder="请输入内容" name="text1" type="text" /><input value="默认值" placeholder="请输入不大于3位的内容" name="text2" type="text" /><input placeholder="请输入不大于6位的密码" maxlength="6" name="pw" type="password" /><br/><input name="radio1" type="radio" value="mianbao" /> 面包 <br/><input name="radio1" type="radio" value="baozi" /> 包子 <br/><input name="radio1" type="radio" value="shengjianbao" /> 生煎包 <br/><input name="radio2" type="radio" value="xigua" /> 西瓜 <br/><input name="radio2" type="radio" value="yumi" /> 玉米 <br/><input name="radio2" type="radio" value="danbaizhi" /> 蛋白质 <br/><input name="checkbox1" type="checkbox" value="chdd" /> 成华大道 <br/><input name="checkbox1" type="checkbox" value="erxq" /> 二仙桥 <br/><input name="checkbox1" type="checkbox" value="jiji" /> 大爷 <br/>
</form>

👸小媛:复选框就是 checkbox,明白了,并且还可以进行复选。
在这里插入图片描述
🐶1_bit:是的,这些标签如果你要用做 form 表单标签你就必须放在 form 表单之内,这样提交后才有效,如果你不用做表单也可以直接添加在 html 文档之中。

👸小媛:明白了。

2.4 file 文件上传

🐶1_bit:接下来咱们了解一下上传文件的 input 类型 file,如下所示。

<input name="file" type="file" /> 

👸小媛:此时在页面中如下显示。

在这里插入图片描述
🐶1_bit:只需要选择浏览,就可以选择文件了。

👸小媛:奥耶,不错不错。

2.5 多行文本输入框

🐶1_bit:你就负责喊 666 就好了。接下来咱们再来看一个 textarea,你可以理解为多行文本。

<textarea name="textarea" cols="20" rows="10">

👸小媛:其中 cols 属性为列、rows为行吧?

🐶1_bit:是的,这是在页面中的显示情况。
在这里插入图片描述
👸小媛:但是我发现点击右下角可以拖动这个多行文本框耶。

🐶1_bit:这个你可以使用一个样式,就可以禁止拖动了。

<textarea style="resize: none;"  name="textarea" cols="20" rows="10">

👸小媛:明白了,右下角的拖动按键消失了。
在这里插入图片描述

2.6 重置按钮

🐶1_bit:接下来咱们再看一个重置按钮 rest。

<input type="reset" value="重置">

🐶1_bit:点击后即可重置输入的内容。

在这里插入图片描述
👸小媛:真方便。

2.7 按钮

🐶1_bit:那现在咱们就介绍一下提交按钮了,只需要把 input 的类型提交成 submit 就可以了。

<input type="submit" value="提交按钮">

👸小媛:点击这个按钮就可以直接提交表单了吗?

🐶1_bit:是的,也有普通的按钮,叫做 button,如下所示。

<button>普通按钮</button>

在这里插入图片描述
👸小媛:这两个按钮还有什么别的区别吗?

🐶1_bit:应该说相对于 input 的 submit 按钮,button 按钮更加灵活,在 button 按钮之中还可以嵌入一些图片,并且让图片具有按钮特性,例如如下所示。

<button><img src="./img/1.png"></button>

在这里插入图片描述
🐶1_bit:此时这个图片就有按钮的特性了。

👸小媛:哇,我喜欢用button。

🐶1_bit:哈哈哈,我也喜欢。其实对于表单来说,只要咱们将一些有信息内容的标签丢到其中,给予name 标签,那么这些对应的标签所对应的值都将随着表单进行提交。

👸小媛:原来是这么回事,所以这些标签就像刚刚你说的那样,不一定需要写在 form 之中。

🐶1_bit:对的。所以这一节的内容大致就学完了,你可以自己按照想法做一个问卷,用表单来做试一下。

2.8 下拉列表

👸小媛:可是我学的内容还没那么多呀,下拉列表我就不会。

🐶1_bit:那我就教你吧,下拉列表使用 select 标签,每一个选项在其内部使用 option 标签,如下所示。

<select name="ccc"><option value="xc">小吃</option><option value="ls">零食</option><option value="kqs">矿泉水</option><option value="gz">瓜子</option><option value="hs">花生</option><option value="bbz">八宝粥</option>
</select>

👸小媛:select 就是下拉选项标签?然后 option 放在里面就是选项?

🐶1_bit:是的,然后你要放在表单内的话你需要给 select 一个name 值,然后每个 option 一个 value 值属性。

👸小媛:明白了,看见效果了。
在这里插入图片描述
👸小媛:欧了。

目录

【前端就业课 第一阶段】HTML5 零基础到实战(九)列表
【前端就业课 第一阶段】HTML5 零基础到实战(八)表单详解
【前端就业课 第一阶段】HTML5 零基础到实战(七)文字及图片样式
【前端就业课 第一阶段】HTML5 零基础到实战(六)表格详解
【前端就业课 第一阶段】HTML5 零基础到实战(五)基础元素
【前端就业课 第一阶段】HTML5 零基础到实战(四)伪类与伪元素
【前端就业课 第一阶段】HTML5 零基础到实战(三)一篇文CSS基础入门
【前端就业课 第一阶段】HTML5 零基础到实战(二)超链接
【前端就业课 第一阶段】HTML5 零基础到实战(一)基础代码结构详解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/286542.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【ArcGIS遇上Python】ArcGIS10.6 python批量将栅格中的特定值替换Setnull为NoData

案例一: 如下图所示为兰州市dem,将图一中高程大于1600m的像元值设置为无效(Setnull)之后的效果如图二所示。 实现过程: 栅格计算器参考文章:《【ArcGIS风暴】ArcGIS 10.2栅格计算器实用公式大全(经典珍藏版)》,该文章中主要以ArcGIS102.为平台讲解栅格计算器的…

开源力量:微软竟开源 PowerShell

导读曾经有段时间&#xff0c;微软称 Linux 是“癌症”&#xff0c;但是随着时光流逝&#xff0c;现在微软已经认识到了开源世界的不断增长&#xff0c;除了在这个领域加大投入之外别无选择。微软已经启动了几个开源项目&#xff0c;希望能吸引一些 Linux 用户&#xff0c;其中…

ENVI5.4完美实现MODIS NDVI数据格式转换和投影变换

如上图所示,分别为: View1:MODIS hdf数据多波段 View2:MODIS NDVI波段 View3:ArcGIS10.8投影变换后的MODIS NDVI View4:ENVI5.4投影变换后的MODIS NDVI 关于ArcGIS处理MODIS数据的操作,可以参照: 《ArcGIS10.8完美实现MODIS NDVI数据格式转换和投影变换》 《重磅!ArcG…

【前端就业课 第一阶段】HTML5 零基础到实战(九)列表

注意&#xff1a;手机&#xff08;APP&#xff09;打开&#xff0c;内容显示更佳&#xff0c;不会的私聊博主即可 想要拿代码或加入学习计划&#xff08;** 博主会监督你并且教你写文章 **&#xff09;的拉到最下面&#xff08;PC端Web打开&#xff09;加博主即可&#xff0c;目…

android 电源管理 wakelock 唤醒锁机制

Android 电源管理 — 唤醒锁全新上市 大多数人可能都遭遇过手机的电池续航时间较短带来的尴尬。 这极其令人讨厌。 没电的手机和一块水泥砖没什么差别。 一般而言&#xff0c;如果用户的手机电池无法持续一整天&#xff0c;他们会感到非常不满。而且&#xff0c;当手机充电时用…

初始Bootstrap

使用示例①下载Bootstrap框架 网址&#xff1a;http://v3.bootcss.com/getting-started/#download②解压得到三个文件③将文件添加进项目后&#xff0c;在页面中引用必要的css和js④查看效果&#xff08;a标签美化得不要不要的了&#xff5e;&#xff09;更多学习Bootstrap的资…

APP无埋点流程

最近无埋点技术很是流行&#xff0c;抽空研究了下诸葛IO&#xff0c;talkingData以及百分点这些业内知名公司的无埋点SDK&#xff0c;抽取其中重要的信息供大家参考&#xff1a;1、首先什么是无埋点呢&#xff0c;其实所谓无埋点就是开发者无需再对追踪点进行埋码&#xff0c;而…

Esri Maps For Office制作漂亮的地图

ArcGISOnline是一个基于云架构的资源中心,在这里你可以发布自己的地图资源、浏览其它ArcGIS爱好者发布的应用程序;总之,它为我们提供了一个在线交流的场所。 EsriMapsForOffice是ArcGISonline推出的一个Office环境的插件,可以让我们在Excel、Powerpoint中进行制图,就像在…

《什么是 eBPF》O'Reilly 报告中文版放送

祝大家端午安康&#xff0c;国泰民安&#xff0c;世界和平。今年端午节&#xff0c;鄙人人在北京&#xff0c;所在区有中风险地区&#xff0c;而老家又是所在省的唯一一个中风险地区&#xff0c;既出不了京&#xff0c;也回不了家。可谓有家不能回&#xff0c;真是每逢佳节倍思…

一键将Python2代码自动转化为Python3

Python2的代码直接在Python3环境运行的话会报错误&#xff1a; 如果大量的代码&#xff0c;无论是批量替换&#xff0c;还是逐行修改都够累的&#xff0c;这活儿表示不能干&#xff01;&#xff01;&#xff01; 有没有办法一键转换呢&#xff1f; 百度了一下发现网上的方法如…

【前端就业课 第一阶段】HTML5 零基础到实战(十)JavaScript基础一篇入门

注意&#xff1a;手机&#xff08;APP&#xff09;打开&#xff0c;内容显示更佳&#xff0c;不会的私聊博主即可 想要拿代码或加入学习计划&#xff08;** 博主会监督你并且教你写文章 **&#xff09;的拉到最下面&#xff08;PC端Web打开&#xff09;加博主即可&#xff0c;目…

一款开源的跨平台实时web应用框架——DotNetify

今天给大家介绍一个开源的轻量级跨平台实时HTMLC#.NET Web应用程序开发框架——DotNetify&#xff0c;允许你在C#.NET后端上创建具有React、React Native、Vue或Blazor 前端的实时、响应式、跨平台应用程序。它的主要特点是&#xff1a;简单且轻量响应式后端MVVM内置实时解决方…

【GeoDataBase】Geodatabase智能化操作:属性域

Geodatabase中所包含的不仅仅是要素类、要素集和表,还可能包含关系类、注释类、几何网络、拓扑等不同的结构和类别。 地理数据库按照面向对象的模型存储地理信息,也可以将其非空间信息保存在表中。对于要素和表可以设置一些规则进行限制,对属性的约束称为属性域。 属性域是描…

用Python写一个将Python2代码转换成Python3代码的批处理工具

之前写过一篇如何在windows操作系统上给.py文件添加一个快速处理的右键功能的文章&#xff1a;《一键将Python2代码自动转化为Python3》&#xff0c;作用就是为了将Python2的文件升级转换成Python3的文件。之后&#xff0c;有朋友问&#xff0c;如果有很多文件需要转换&#xf…

WP 手机Lumia 820 锁屏密码的POJI研究

Windows Phone lumia 手机锁屏密码的POJI研究大家好今天给大家分享一个最新研究案例&#xff0c;近日笔者Nokia Lumia 820&#xff0c;由于客户密码失误太多&#xff0c;导致锁屏23000余分钟&#xff0c;&#xff0c;请看&#xff1a;型号Nokia Lumia820条件&#xff1a;Lumia8…

ArcGIS10从入门到精通系列实验图文教程(附配套实验数据持续更新)

文章目录1. 专栏简介2. 专栏地址3. 专栏目录1. 专栏简介 本教程《ArcGIS从入门到精通系列实验教程》内容包括&#xff1a;ArcGIS平台简介、ArcGIS应用基础、空间数据的采集与组织、空间数据的转换与处理、空间数据的可视化表达、GIS空间分析导论、矢量数据的空间分析、栅格数据…

【iVX 初级工程师培训教程 10篇文拿证】09 聊天室制作

目录 【iVX 初级工程师培训教程 10篇文拿证】01 了解 iVX 完成新年贺卡 【iVX 初级工程师培训教程 10篇文拿证】02 数值绑定及自适应网站制作 【iVX 初级工程师培训教程 10篇文拿证】03 事件及猜数字小游戏 【iVX 初级工程师培训教程 10篇文拿证】04 画布及我和 iVX 合照 【iV…

为什么Dapr是比SpringCloud和Istio更优雅的微服务框架?

作者&#xff1a;徐磊文章首发地址&#xff1a;https://smartide.cn/zh/blog/2022-0601-dapr/Dapr 是微软主导的云原生开源项目&#xff0c;2019年10月首次发布&#xff0c;到正式发布 V1.0 版本的不到一年的时间内&#xff0c;github star 数达到了 1.2万&#xff08;现在已经…

Android之模拟网络请求返回http 502、400、401、402错误码

1 问题 app 网络框架协程没有做网络异常捕获处理&#xff0c;想本地测试网络接口&#xff0c;希望网络接口返回Http的错误码 比如502、400、401、402 2 解决办法 1、pc安装Fiddler Everywhere 2、让Fiddler Everywhere支持抓http和https的包 3、保持手机和电脑同一个局域网&am…

tomcat结合nginx使用小结

tomcat结合nginx部署 相信很多人都听过nginx&#xff0c;这个小巧的东西慢慢地在吞食apache和IIS的份额。那究竟它有什么作用呢&#xff1f;可能很多人未必了解。 说到反向代理&#xff0c;可能很多人都听说&#xff0c;但具体什么是反向代理&#xff0c;很多人估计就不清楚了。…