关于form标签,你该知道
有没有发现,自己在写模板的时候很少使用form元素,一来form和table总是那么傻傻分不清楚;二来form的特性理解不清楚,有了input、label来了直接就上,根本不用form(不知道有没有人和我一样)。因此,不得不再来针对form这个元素开个小灶。
追根溯源:
<form> 标签用于为用户输入创建 HTML 表单。表单能够包含input元素(元素由一个开始的标签和结束的标签组成,用来包含某些内容),比如文本字段、复选框、单选框、提交按钮等等,还可以包含textarea、fieldset、legend、label标签(如:<br/>本身既是开始标签也是结束标签,但不包含任何内容,所以这只是个标签)。主要用于向服务器传输数据。它是一个块元素。
条分缕析:
其实form本身还是很高大上的,首先,它是和服务器打交道的,其次,它统帅了旗下的所有表单标签。一般在页面中总会遇到一些个人信息的填写,这儿就是form的用武之地,它有两个重要属性:action(服务器的地址)、method(提交数据的方式)。当你填写完数据后点击提交,form就会携带者这些数据信息找服务器去了。
但是对于input这些表单标签来说,要不要form这个父元素都不是必须的,因为现在有了js,我们提交数据可以用脚本来完成,尤其是现在有了ajax这个异步交互的方式,因此,这样就造成了开篇说的对form陌生的结果。况且,有时候这个input标签不是为了提交数据使用的,它可能仅仅就是单纯的以信息输入的工具来使用。因此,不要在意识里产生form和input等是相互依赖的关系这样的想法。
具体在使用的时候该如何权衡,是用传统的submit方式提交,还是用js进行事件监听,它们之间有什么区别和优劣,数据提交的时候分别都发生了什么,用哪个更可靠,这。。。还需小生另番研究,下回分解。
关于form标签,你该知道的更多相关文章
- s:form标签
2017-01-07 17:43:18 基本的用法 <!-- Action类必须有一个无参的构造器,因为在执行action方法之前,拦截器已经创建了一个"空"的Action对 ...
- 修改 jquery.validate.js 支持非form标签
尝试使用markdown来写一篇blog,啦啦啦 源代码传送门:github 在特殊情况下我们使用jquery.validate.js对用户输入的内容做验证的时候,表单并不是一定包含在form之中,有 ...
- springmvc的form标签
1.要使用Spring MVC提供的表单标签,首先需要在视图页面添加: <%@ taglib prefix="form" uri="http://www.sprin ...
- 上传图片HTML <form> 标签的 method 属性
<!DOCTYPE HTML><html><body> <form action="/example/html5/demo_form.asp&quo ...
- 解决HtmlAgilityPack无法获取form标签子节点的问题
问题描述 今天使用HtmlAgilityPack提取Form表单下的input节点,发现提取的form节点没有子节点,InnerHtml也是为空,起初以为是标签不全导致,后来分析html代码发现不可能 ...
- SPRING IN ACTION 第4版笔记-第六章RENDERING WEB VIEWS-002- Spring的JSP标签之form标签(<sf:input><sf:errors><sf:form>)
一. Spring offers two JSP tag libraries to help define the view of your Spring MVC web views. One tag ...
- HTML <form> 标签的 enctype 属性
HTML <form> 标签 定义和用法 enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码. 默认地,表单数据会编码为 "application/x-www- ...
- Form标签+Css基础
一.Form表单标签 <form action="" method=""></form> 表单就是用来将用户的信息提交到服务器 ...
- HTML <form> 标签的 method 属性(20161028)
HTML <form> 标签的 method 属性 HTML <form> 标签 实例 在下面的例子中,表单数据将通过 method 属性附加到 URL 上: <form ...
随机推荐
- oracle 小知识
oracle: 数值随机的函数是 dbms_random.value(最大值,最小值) 用法是select dbms_random(3,0) from dual; oracle: 获取前100条 ...
- CentOS 配置 iptables 配合 ss
转自:http://www.jianshu.com/p/28b8536a6c8a 环境: CentOS 6 shadowsocks iptables 在安装了ss-bash后,ss-bash每添加一次 ...
- Servlet与JSP的区别
一.基本概念 1.1 Servlet Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面.它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器 ...
- BigDecimal在实际项目的应用及遇到的问题
我们都知道,java中对大小数,高精度的计算都会用到BigDecimal.但是在实际应用中,运用BigDecimal还是会遇到一些问题.下面说一下我在项目中怎么样BigDecimal和遇到的一些问题. ...
- 推荐csdn里的几篇activiti基础入门及提高的博客
昨天有个网友加qq询问我有没有非maven搭建的activiti项目的demo,因为我博客中写了一个用maven,我当时没有,于是晚上回家尝试了一下,结果比较容易就实现了. 之后和那个网友聊了一下,他 ...
- 黄聪:MySQL 按指定字段自定义列表排序
问题描述 大家都知道, MySQL 中按某字段升序排列的 SQL 为 (以 id 为例, 下同): SELECT * FROM `MyTable` , , , ) ORDER BY `id` ASC ...
- 操作系统中前台进程与后台进程(适用于Linux)
两种进程的主要区别: 1.前台进程用户可以操作,后台进程用户不能操作(除了把它关闭). 2.前台进程不全是由计算机自动控制,后台进程全都是由计算机自动控制. 3.后台进程一般用作系统服务,可以用cro ...
- SELECT INTO FROM 与 INSERT INTO SELECT区别鉴赏
.INSERT INTO SELECT语句 语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Tabl ...
- RMAN_学习笔记3_RMAN Catalog恢复目录
2014-12-23 Created By BaoXinjian
- POS管理系统之新增设备入库
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...