一、<form></form>标签      引用借鉴:http://www.cnblogs.com/fizx/p/6703370.html

form标签的属性规定了当前网页上传数据的地址和方式。

1.1 action 属性(常用)

action:接受请求的URL;URL为处理上传数据的页面。

1.2 method 属性(常用)

method属性有两种,分别为:get、post

get:

1>采用 GET 方法发送数据时,浏览器会与表单处理服务器建立连接,然后直接在一个传输步骤中发送所有的表单数据:浏览器会将数据直接附在表单的 action 的 URL 之后,这两者之间用问号进行分隔。这种方式并不安全,因为上传的数据可以直接在URL中反映出来。

2>GET方法提交数据后的URL链接是可以添加书签的,每次打开该书签都相当于向服务器提交了相同的数据。

3>URL的长度是有限的(约3000字符),所以get方式经常用来提交较小的数据。

4>结合以上特性,一般使用get方式来提交非敏感内容,比如说搜索查询。不仅速度较快,还可以将页面保存到书签之中

post:

1>采用 POST 方法,浏览器将会按照下面两步来发送数据。首先,浏览器将与 action 属性中指定的表单处理服务器建立联系;一旦建立连接之后,浏览器就会按分段传输的方法将数据发送给服务器。通过这种方式来上传数据安全性较高。

2>POST方法上传的数据没有长度限制,可以传输大量的数据,所以在上传文件只能使用Post。

3>大多数情况都应该使用POST方式进行数据的传输。

1.3.accept-charset

accept-charset属性的值规定了服务器使用哪一种字符集编码来处理本页面所上传的数据。常用的有“UTF-8”、“ISO-8859-1"、"gb2312"等。

一般不推荐使用。默认属性为:unknown  意思是与当前html 使用相同的字符集。

服务器端可以来验证

1.4.name属性

Form 标签元素自身并没有数据传输,它的 name 属性只是提供了一种在脚本中引用表单的方法。与此同时,form标签元素内的数据都是通过name来传递的,只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。

其余属性还有:

5.enctype属性

Enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。

1>默认的属性是application/x-www-form-urlencoded,意味着在发送前对所有字符进行编码,把 "+" 转换为空格,并且把特殊字符转换为 ASCII 十六进制值。在不涉及文件传输时,一般使用这种方式。

2>multipart/form-data,这种编码类型不对字符编码,数据通过二进制的形式传送到服务器端。这个是专门用来传输特殊类型数据的,当我们上传文件时,比如图片、视频、MP3等,必须要使用这种编码方式。它的编码方式为:把form的内容瓜分成段,每段代表一个input属性,每个段落间用分隔符隔开。其中每个段落登记这个段落的消息,例如Content-Disposition,name,Content-Type等等,还有这个段落与下个段落的分隔符boundary,以及这个段落的value数据。

3>text/plain,将内容设置为纯文本的形式,空格转换为 "+" 加号,但不对特殊字符编码。

6.target属性

Form标签的target属性和a标签的功能相似,规定了在何处打开表单上传后的处理页面。

1>_blank
浏览器总在一个新打开、未命名的窗口中载入目标文档。
2>_self
这个目标的值对所有没有指定目标的 <a> 标签是默认目标,它使得目标文档载入并显示在相同的框架或者窗口中作为源文档。这个目标是多余且不必要的,除非和文档标题 <base> 标签中的 target 属性一起使用。
3>_parent
这个目标使得文档载入父窗口或者包含来超链接引用的框架的框架集。如果这个引用是在窗口或者在顶级框架中,那么它与目标 _self 等效。
4>_top
这个目标使得文档载入包含这个超链接的窗口,用 _top 目标将会清除所有被包含的框架并将文档载入整个浏览器窗口。

7.autocomplete属性(HTML5新增属性)

Autocomplete 属性规定表单是否应该启用自动完成功能。当用户在字段开始键入时,浏览器基于之前键入过的值,显示出在该字段中填写过的选项,从而简化用户的输入。autocomplete只有两个值,on 和 off,分别对应启用和关闭这个功能。默认值为on。

8.novalidate

Novalidate属性规定当提交表单时不对其进行验证。通过将novalidate=novalidate属性放置到form元素上,form元素的原生校验特征就会忽略,这样就可以防止它同JavaScript的校验方法起冲突。

js form 表单属性学习的更多相关文章

  1. html5中新增的form表单属性

    html5中新增两个表单属性,分别autocomplete和novalidate属性 1.autocomplete属性 该属性用于控制自动完成功能的开启和关闭.可以设置表单或者input元素,有两个属 ...

  2. HTML5的form表单属性

    form:HTML4中,表单内的从属元素必须书写在<form></form>之内,但是在HTML5中,表单的从属元素可以处于页面的任何位置,然后为其添加form属性,属性值为f ...

  3. JS form表单提交的方法

    1.当输入用户名和密码为空的时候,需要判断.这时候就用到了校验用户名和密码,这个需要在jsp的前端页面写:有两种方法,一种是用submit提交.一种是用button提交.方法一: 在jsp的前端页面的 ...

  4. JS form 表单收集 数据 formSerialize

    做后台系统的时候通常会用到form表单来做数据采集:每次一个字段一个字段的去收集就会很麻烦,网站也有form.js插件可以进行表单收集,并封装成一个对象,通过ajax方法传到后台:现在介绍一种直觉采集 ...

  5. js——form表单验证

    用js实现一个简易的表单验证 效果: 代码: <html> <head> <title>js校验form表单</title> <meta char ...

  6. js form表单提交后如何可以不刷新页面 的解决办法

    表单可实现无刷新页面提交,无需页面跳转,如下: 通过一个隐藏的iframe实现, form表单的target设置为iframe的name名称,form提交目标位当前页面iframe则不会刷新页面 &l ...

  7. js form 表单使用

    <!--表单所有标签--> <form action="" method="" name=""> 单行文本框:< ...

  8. Ext.js form 表单提交问题

    var form = new Ext.form.FormPanel({ labelAlign : 'right', border : false, bodyStyle : 'background-co ...

  9. js form表单的校验

    if(!$("#form").validate().form()){ return false;} <元素 class="required">< ...

随机推荐

  1. Java-手动搭建SSH(maven版)

    创建maven项目 把maven项目变为动态网站,步骤如下: 项目结构图如下: 开始搭建spring+springmvc+Hibernate项目 环境版本就不多说了,直接贴出pom.xml文件 < ...

  2. GridControl单元格编辑验证的方法

    本文实例演示了DevExpress实现GridControl单元格编辑验证的方法,比较实用的功能,具体方法如下: 主要功能代码如下: /// <summary> /// 自定义单元格验证 ...

  3. vue设置全局变量和修改

    1. 只读的全局变量 对于只读的全局变量,知道的有以下两种使用方式: 1)global.js 模块中定义:其他模块import后再使用即可 1.1)定义 import Vue from 'vue'; ...

  4. Linux学习笔记之tail命令显示最后n行

    tail :输出文件的最后几行. 用于linux查看日志的时候很方便,假如日志文件为:Console.log用法:1. tail Console.log tail # 输出文件最后10行的内容 2. ...

  5. 2、在NET中实现多线程

    1.System.Threading命名空间 System.Threading命名空间提供了使得可以多线程编程的类和接口 其中 (1)Thread类构成了C#多线程编程的支柱,他用于创建并控制线程 ( ...

  6. selenium中的元素操作之三大切换(二)

    一.窗口切换 使用方法: 1.获取到打开的所有的窗口,句柄handles all_handles = driver.window_handles print(all_handles) 2.获取当前的窗 ...

  7. 使用@Async注解创建多线程,自定义线程池

    说明 使用@Async注解创建多线程非常的方便,还可以通过配置,实现线程池.比直接使用线程池简单太多.而且在使用上跟普通方法没什么区别,加上个@Async注解即可实现异步调用. 用法 AsyncTas ...

  8. printf打印字节

    int i = 0; printf("buf:"); for(i = 0; i < sizeof(buf); i++) { printf("0x%x", ...

  9. Flask整合WebLoader 用于大附件拆分上传再合并

    博客:https://blog.csdn.net/jinixin/article/details/77545140 github:https://github.com/jinixin/upload-d ...

  10. JavaScript: 数据类型检测

    由于JavaScript是门松散类型语言,定义变量时没有类型标识信息,并且在运行期可以动态更改其类型,所以一个变量的类型在运行期是不可预测的,因此,数据类型检测在开发当中就成为一个必须要了解和掌握的知 ...