热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HTML表单是什么?HTML表单内容的详细介绍(附代码)

HTML表单是用于搜集不同类型的用户输入的,表单是一个包含表单元素的区域;表单元素是允许用户在表单中(比如:文本域、下拉列表、单选框、复选框等等)输入信息的元素;表单使用表单标签(<form>)定义。
HTML 表单是用于搜集不同类型的用户输入的,表单是一个包含表单元素的区域;表单元素是允许用户在表单中(比如:文本域、下拉列表、单选框、复选框等等)输入信息的元素;表单使用表单标签()定义。

一、介绍

1.表单概念:

表单最重要的表现是在客户端接收用户的信息,然后将数据递交给后台的程序来操控这些数据,从技术的概念上说,表单就是用来操作form对象,对象是一种基本的数据类型

2.创建表单:

表单通过标签来创建,其中放置表单的对象,如表单域、按钮和其他事物,标签中可扩展几个属性:

a.action属性

通过标签定义的表单里面必须有action属性才可以将表单中的数据递交上去

     

以上代码表示这个表单的作用是用来提交some.php这个页面的数据

b.method属性

该属性的作用是告诉浏览器数据是以何种方式提交上去的,该属性下有两个选择:"get"和"post",默认情况下,数据被提交的方 式是get,表单域中输入的内容会添加在action指定的URL中,当表单提交后用户便获得一个明确的URL,由于这种方式下数据会添 加到URL中,所以好处是可以保存在收藏夹中和他人分享,直接访问主页的URL可以达到和填写注册后一样的效果,如有些时 候,用户将自己已经注册过的一些网站主页加入到自己的收藏夹,再次从收藏夹中打开时,会发现已经是登录的状态。而post 这种方式,数据将以HTTP头的形式发送,表单数据不再是URL中的一部分。二者区别是get在安全性上较差,所有表单域的值 直接呈现,而post除了可见的处理脚本程序以外,别的东西都可以隐藏,所以在实际运用时通常选择post这种处理方式

c.name属性

作用是令提交上去的表单数据可以被处理这些数据的程序识别,大部分页面中放入的表单很可能不止一个,此时就需要给不同 的表单起不同的名字,以便程序识别




...

上述部分代码说明通过表单me获取输入的length数值,代码中有不同的表单可以通过name来识别

d.enctype属性

该属性代表HTML表单数据的编码方式,分别有application/x-www-form-urlencoded(标准编码方式,提交的数据被编码为名称/ 值对)、multipart/form-data(表示数据编码为一条信息,为表单定义了MIME编码方式,创建了一个与传统不同的POST缓冲 区,页面上每个控件对应消息的一个部分)和text/plain(表示数据以纯文本的形式进行编码,这样在信息中将不包含控件或格 式字符)共三种方式

e.target属性

目标显示方式,表示在何处打开目标URL,可以设置4种方式,_blank表示在新的页面中打开链接,_self表示在相同的窗口打开 页面,_parent表示在父级窗口打开页面,_top表示将页面载入到包含该链接的窗口,取代任何当前在窗口中的页面.

...

这段代码表明该表单的动作是发送到邮箱depp59@gmail.com,使用post的传输方式,使用text/plain编码方式的me表单,使之 在新页面中打开

3.表单域:即用户输入数据的地方

表单域可以分为input、textarea、select 3个对象,其中大部分表单通过input属性来实现,textarea和select创建一种控制类型

二、input对象下的多种表单表现形式

页面中大部分表单的形式都是通过输入标记input来实现的

a.其中name表示输入数据的名字,其作用是为了让程序明白所提交的数据

   这个输入的数据命名为length
  var length=document.me.length.value;

如果缺少了这样一个name属性,虽然在浏览器中的显示没有什么变化,但是后台程序后Javascript程序就不能获得提交的数据

b.type属性表示所定义的是哪种类型的表单形式,该属性有九个可选值:

text 单行的文本框
password 将文本替换为"*"的文本框
checkbox 只能做二选一的是或否选择
radio 从多个选项中确定的一个文本框
submit 确定命令文本框
hidden 设定不可被浏览用户修改的数据
image 用图片表示的确定符号
file 设置文件上传
button 用来配合客户端脚本

c.size:表示文本框字段的长度

d.maxlength:表示可输入的最长的字符数量

e.value:表示预先设置好的信息

4.text文本框的样式表单


    
    


    
         输入用户名:  
输入邮箱地址:

代码中size定义了文本框的长度,而maxlength定义了这个文本框最多只能输入12个字符,如果超出了这个长度数据将不能输入,这两个text样式的数据定义了不同的名字这很关键,否则一旦需要被程序调用数据将无法辨认。

5.password输入密码的样式表单(可以将文本使用保密形式展示出来的一个功能,根据不同的浏览器会使用点状形态或星号符表示)


    
    


    
         输入用户名:  
输入邮箱地址:
输入密码:

6.checkbox复选框的表单样式(浏览器会在选择栏前面提供一个小方框如果选择小框中会添加小勾符号表示选中)


    
    

   

    
        

注册信息:

使用真实姓名

实名制可以方便您更好地和朋友交流

显示我的地址

如果去除勾选,其他用户将无法查到你的地址

可以给我发邮件

如果勾选,我们将会为您发送来自广告商的信息

上面代码中添加了checked="checked"表示复选框默认值设置为checked,那么√符号会被默认添加

7.radio单选按钮的样式表单(多选一表单)

radio样式类似于选择题,在一组选项中选出唯一的一项,发送这列数据,其中给这组选项定义相同的名字,但是通过value属性 来加以区别,因此,这里必须给input对象设定value值,而且不同对象的value值不能相同,否则数据无法辨认


    
    
 

    
       

性别

我是男的

请正确选择您的性别哦

我是女滴

请正确选择您的性别哦

8.submit提交数据的样式表单
该属性创建一个按钮,该按钮的作用就是提交数据。当点击"提交"按钮时,数据会发送到指定的地方。其中通过value值可以修 改按钮上显示的内容。此外还有一个reset属性,这是一个复位按钮,当被点击时表单的内容会被重新设置,回到页面初始位置


    
    
   

    
        

性别

我是男的

请正确选择您的性别哦

我是女滴

请正确选择您的性别哦

9.hidden隐藏域的样式表单
hidden属性可以创建一个隐藏域,数据会被隐藏起来,用户无法对其进行操作(这些数据通常是用户不关心的但是必须被提交 的数据)
10.image样式的表单(可以看做图像替换按钮的技术,当图像被点击时,数据一并被提交至服务器)

使用src属性指定这张图像的路径,使用alt属性来添加文本注释,此时提交按钮被替换成一个小小的图像,当点击图像时,其作 用就相当于submit按钮,但是当表单数据被提交的同时,用户所单击的图像的位置坐标(image.x=23 image.y=59)也会被发送
表单中还有一种触发事件的button表单,它只是一个按钮,单个button按钮并不会提交任何数据,它的作用是用来调用前端页 面,即客户端的脚本程序

11.file上传文件的样式表单
该表单允许用户上传自己的文件,例如用户上传自己的图像给服务器,用来改变用户在不同网站上的形象图片。需要注意的 是,当使用file样式的表单时,必须在标签中说明编码方式,这样服务器才可以接收到正确信息

    

上传我的文件

三、textarea对象的表单
该对象就像是input对象中的text表单,只不过是扩展过的text样式表单,可以通过行(rows)属性和列(cols)属性来编辑文本域的大 小,常见于留言板、论坛中回帖时的文本框等


    
    
 

  
      
  

textarea属性标签必须要封闭,且生成页面时在文本框中会预先设置好文本“请文明用语”,但是用户不得不先删去预先的文本再 编辑自己的内容。当文本框中输入的内容超出预先设置的行数时会自动出现滚动条,如果没有超出文本框的范围则滚动条是灰 色的
四、select对象表单
使用select将创建一个列表样式的表单,显示为出现一个下拉列表框,令用户可以方便的选择其中一个目录,通常在一些要求填 写地区、生日等信息中,设计者可以给使用者准备好选项,需要使用


    
    
 

   
      

地址

用户可以通过下拉列表框选择一个“地址”,而这个数据会被表单发送到服务器,此外还可以通过value属性为每一个option指定不 同的值,这样的话value设置的值将取代option的文本内容。注意如果设计者希望预先设置初始值,那么在所希望的option中添加 selected="selected"就可以了,如,否则默认初始值应该是第一个出现的标签配合label属性来给选项分类

此外如果不希望select对象以下拉列表框的形式展现出来,有一种方式可以将目录项以滚动条的样式表现出来,只需要在select 标签中加入size属性,如"size=6"表示是一个能容纳6行文字的文本框,当目录项超出设置的行数时将出现滚动条

五、表单域集合
如果表单的项目过多或为了修饰表单部分,可以通过使用表单域将表单分组,表单域的代码由

标签和标签组 合而成,默认情况下,
标签勾画出表单域的框形,标签的对象像标题一样出现在框的左上角


    
 

  
     
注册信息: 输入用户名:


推荐阅读
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 本文介绍了C#中数据集DataSet对象的使用及相关方法详解,包括DataSet对象的概述、与数据关系对象的互联、Rows集合和Columns集合的组成,以及DataSet对象常用的方法之一——Merge方法的使用。通过本文的阅读,读者可以了解到DataSet对象在C#中的重要性和使用方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 表单提交前的最后验证:通常在表单提交前,我们必须确认用户是否都把必须填选的做了,如果没有,就不能被提交到服务器,这里我们用到表单的formname.submit()看演示,其实这个对于我们修炼道 ... [详细]
author-avatar
醉后余欢0醒后亦欢
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有