HTML5的表单(form)介绍

您所在的位置:网站首页 html标签栏介绍 HTML5的表单(form)介绍

HTML5的表单(form)介绍

2024-07-12 21:05| 来源: 网络整理| 查看: 265

HTML5的表单(form)介绍

HTML 表单(form) 在网页中主要负责数据采集功能,利用表单可以实现与用户的交互,比如收集浏览者的信息或实现搜索等功能。

表单(form)标签格式:

表单元素

表单标签的属性

除了通用属性 id 、 style 、 class 外,还有:

action:规定当提交表单时,向何处发送表单数据。action取值为:第一,一个URL(绝对URL/相对URL),一般指向服务器端一个程序,程序接收到表单提交过来的数据(即表单元素值)作相应处理。比如,当用户提交这个表单时,服务器将执行网址"http://www.cnblogs.com/"上的名为"reg.ashx"的一般处理程序。第二,使用mailto协议的URL地址,这样会将表单内容以电子邮件的形式发送出去。这种情况比较少见的,因为它要求访问者的计算机上安装和正确设置好了邮件发送程序。第三,空值,如果action为空或不写,表示提交给当前页面。

method:该属性定义浏览器将表单中的数据提交给服务器处理程序的方式。关于method的取值,最常用的是get和post,如 method="post"。第一,使用get方式提交表单数据,Web浏览器会将各表单字段元素及其数据按照URL参数格式附在标签的action属性所指定的URL地址后面发送给Web服务器;由于URL的长度限制,使用get方式传送的数据量一般限制在1KB以下。第二,使用post方式,浏览器会将表单数据作为HTTP请求体的一部分发送给服务器。一般来说,使用post方式传送的数据量要比get方式传递的数据量大;根据HTML标准,如果处理表单的服务器程序不会改变服务器上存储的数据,则应采用get方式(比如查询),如果表单处理的结果会引起服务器上存储的数据的变化,则应该采用post方式(比如增删改操作)。由于我对这些了解的不多,就不多言语了。

target:该属性规定在何处显示action属性中指定的URL所返回的结果。取值有_blank(在新窗口中打开)、_self(在相同的框架中打开,默认值)、_parent(在父框架中打开)、_top(在整个窗口中打开)和framename(在指定的框架中打开)。

title:设置网站访问者的鼠标放在表单上的任意位置停留时,浏览器用小浮标显示的文本。

enctype:规定在发送到服务器之前应该如何对表单数据进行编码。取值:默认值为 "application/x-www-form-urlencoded",在发送到服务器之前,所有字符都会进行编码(空格转换为 "+" 加号,特殊符号转换为 ASCII HEX 值);“multipart/form-data”:不对字符编码。在使用包含文件上传控件的表单时,必须使用该值。

name:表单的名称。注意和id属性的区别:name属性是和服务器通信时使用的名称;而id属性是浏览器端使用的名称,该属性主要是为了方便客户端编程,而在css和javascript中使用的。

表单元素

表单元素(form elements),也称为表单控件(form controls):

单行文本框

密码框 

单选按钮

复选框

隐藏域

文件上传

下拉框标签

多行文本

提交按钮

普通按钮

重置按钮

下面简要介绍几个表单元素的使用。

Input标签定义输入控件。语法:

Input标签属性

说明

type

指定元素的类型。text(文本框)、password(密码框)、checkbox(复选框)、radio(单选按钮)、submit(提交按钮)、reset(重置按钮)、file(文件上传)、hidden(隐藏域)、image(图像形式的提交按钮) 和 button(按钮),还有:email(电子邮箱)、url(网址)、number(数字输入框,带微调按钮)、range(滑动条)、date(选取日期)、time(选取时间)、datetime(选取日期时间)

name

指定表单元素的名称

value

元素的初始值。type 为 radio时必须指定一个值

size

指定表单元素的初始宽度。当 type 为 text 或 password时,表单元素的大小以字符为单位。对于其他类型,宽度以像素为单位

maxlength

type为text 或 password 时,输入的最大字符数

checked

type为radio或checkbox时,指定按钮是否是被选中

select(列表框)

标签下拉列表 其中的 标签用于定义列表中的可用选项。例如:      --选择国家--      美国      英国      中国    

textarea(多行文本域)

标签定义多行的文本输入。可以通过 cols 和 rows 属性来规定 textarea 的列数——宽度(字符数)和行数,不过更好的办法是使用 CSS 的 height 和 width 属性。

下面给出比较完整的示例

例1、下面给出一个简单的表单示例:

表单示例 输入名称: 输入密码: 选择性别: 男 女 选择技术: Java html CSS 选择文件: 一个按钮: --选择国家-- 美国 英国 中国 可以是多行文本

保存文件名为:表单例1.html

运行效果如下图:

 例2、结合CSS和JavaScript的表单示例

简单学生信息管理 table { margin: auto; width: 80%; background-color: #d9ffdc; /* 表格背景色 */ text-align: center; border-collapse: collapse; } caption { font-size: 28px; line-height: 50px; color: blue; } th { background-color: #00a40c; /* 表头背景色 */ color: #FFF; /* 表头文字颜色 */ } th,td { border: 1px solid #00a40c; padding: 6px; } .btn { color: #FFFFFF; font-size: 16px; font-weight: bold; width: 90px; height: 36px; border-radius: 6px; background-color: forestgreen; } body { text-align: center; } #add { /*width:270px ; height: 290px;*/ display: none; position: absolute; border: 1px solid darkgreen; padding:5px 20px 20px 15px; border-radius: 6px; background-color: #d9ffdc; text-align: right; } h3 { text-align: left; } #close{ float: right; color: lightcoral; } .text { padding: 0 10px; color: #777777; font-weight: bold; margin: 6px; height: 30px; } 简单学生信息表 学号 姓名 性别 住址 删除 添加信息 Χ 学号: 姓名: 性别: 住址: var tab = document.getElementById('cj'); //设置表格奇数行和偶数行背景颜色 function strRow() { var len = tab.rows.length; for(var i = 0; i < len; i++) if(i % 2) tab.rows[i].style.backgroundColor = "lightgreen" else tab.rows[i].style.backgroundColor = "#d9ffdc"; } strRow(); //删除指定行 function del(r) { var i = r.parentNode.parentNode.rowIndex; document.getElementById('cj').deleteRow(i); strRow(); } var btQd = document.getElementById("qd");//通过id属性获取“确定”按钮。 var add = document.getElementById("add");//通过id属性获取“增加信息”对话框。 var btAdd = document.getElementById("addInfo");//通过id属性获取“增加”按钮。 btQd.onclick = function() { insRow(); add.style.display = "none"; } btAdd.onclick = function() { add.style.display = "block"; show(); } //不显示(隐藏)动态添加表单 document.getElementById("close").onclick = function() { add.style.display = "none"; } //插入新行数据 function insRow() { rs = tab.insertRow(tab.rows.length); var c0 = rs.insertCell(0); var c1 = rs.insertCell(1); var c2 = rs.insertCell(2); var c3 = rs.insertCell(3); var c4 = rs.insertCell(4); c0.innerHTML = addForm.id.value; // 新增行的第1个单元格赋值 c1.innerHTML = addForm.user.value; // 新增行的第2个单元格赋值 c2.innerHTML = addForm.Gender.value; // 新增行的第3个单元格赋值 c3.innerHTML = addForm.address.value; // 新增行的第4个单元格赋值 c4.innerHTML = '删除'; //第5个单元格 strRow()// 隔行变色 } //动态添加表单居中显示 function show() { var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; var top = (h - 260) / 2; var left = (w - 300) / 2; add.style.top = top + 'px'; add.style.left = left + 'px'; } window.onresize = function() { show(); };

保存文件名为:表单例2.html

运行效果如下图:

网页前后端交互技术 前端通常会通过后端(后台)提供的接口来获取数据来完成前端页面的渲染。 对于一个站点,用户看得到的只是前端网站的一部分,网站的大多数情况是看不到的,这些看不到的就是后端。后端包括程序设计架构、数据库管理、处理相关的业务逻辑等。 web前端开发是在构建用户界面,相比前端开发,后端开发需要花更多的时间来实现算法和解决问题上。web后端开发跟sql数据库打交道比较多,也就是web后端开发就是从数据库或者其他数据源写入、读取、处理数据。还需要了解PHP、web框架、ASP.NET、WVC等,还有缓存技术(cookie、session、localstorage、cashe-controller等)。

本文不打算深入网页前后端交互技术,在此给出一个参考示例网址https://www.cnblogs.com/nrm1/p/6146981.html

 

附录

HTML 标签参考手册 https://www.w3schools.cn/tags/



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3