任务5-form表单的用法

1.form表单有什么作用?有哪些常用的input 标签,分别有什么作用?

HTML 表单用于接收不同类型的用户输入,用户提交表单时向服务器传输数据,从而实现用户与Web服务器的交互。
HTML表单是一个包含表单元素的区域, 表单使用

标签创建。表单能够包含 input 元素,比如文本字段、复选框、单选框、提交按钮等等。表单还可以包含menus、textarea、fieldset、legend 和 label 元素。
表单属性
name:表单的名称。
action:规定当提交表单时,向何处发送表单数据。action取值为:
第一,一个URL(绝对URL/相对URL),一般指向服务器端一个程序,程序接收到表单提交过来的数据(即表单元素值)作相应处理。
比如,当用户提交这个表单时,服务器将执行网址"http:/ /www.cnblogs.com/"上的名为“reg.ashx”的一般处理程序。

第二,使用mailto协议的URL地址,这样会将表单内容以电子邮件的形式发送出去。这种情况比较少见的,因为它要求访问者的计算机上安装和正确设置好了邮件发送程序。
第三,空值,如果action为空或不写,表示提交给当前页面。

method:该属性定义浏览器将表单中的数据提交给服务器处理程序的方式。关于method的取值,最常用的是get和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”:不对字符编码。在使用包含文件上传控件的表单时,必须使用该值。

input标签常用的有:
1)单行文本框

(input 的type 属性的默认值就是"text")用例:
以下是单行文本框的主要属性:
size:指定文本框的宽度,以字符个数为单位;在大多数浏览器中,文本框的缺省宽度是20个字符。
value:指定文本框的默认值,是在浏览器第一次显示表单或者用户单击按钮之后在文本框中显示的值。
maxlength:指定用户输入的最大字符长度。
readonly:只读属性,当设置readonly属性后,文本框可以获得焦点,但用户不能改变文本框中的value。
disabled:禁用,当文本框被禁用时,不能获得焦点,当然,用户也不能改变文本框的值。并且在提交表单时,浏览器不会将该文本框的值发送给服务器。

2)密码框

用例:
密码字段中的字符会被掩码(显示为星号或原点)。

3)单选按钮

使用方式:使用name相同的一组单选按钮,不同radio设定不同的value值,这样通过取指定name的值就可以知道谁被选中了,不用单独的判断。单选按钮的元素值由value属性显式设置,表单提交时,选中项的value和name被打包发送,不显式设置value。
用例:



4)复选框

使用复选按钮组,即name相同的一组复选按钮,复选按钮表单元素的元素值由value属性显式设置,表达提交时,所有选中项的value和name被打包发送
不显式设置value。复选框的checked属性表示是否被默认选中,
或者
(推荐)
checked、readonly等这种一个可选值的属性都可以省略属性值。
用例:


 
 
5)隐藏域

隐藏域通常用于向服务器提交不需要显示给用户的信息。

6)提交按钮

当用户单击的提交按钮时,表单数据会提交给标签的action属性所指定的服务器处理程序。中文IE下默认按钮文本为“提交查询”,可以设置value属性修改按钮的显示文本。 
用例:

7)重置按钮

当用户单击按钮时,表单中的值被重置为初始值。在用户提交表单时,重置按钮的name和value不会提交给服务器。
用例:

8)普通按钮

普通按钮通常用于单击执行一段脚本代码。
用例:

8)图像按钮

图像按钮的src属性指定图像源文件,它没有value属性。图像按钮可代替,而现在也可以通过css直接将按钮的外观设置为一幅图片。
用例:

9)文件上传

使用file,则form的enctype必须设置为multipart/form-data,method属性为POST。
用例:


文件上传用例
10)其它标签

多行文本
多行文本,cols=“50”、rows=“15”属性表示行数和列数,不指定则浏览器采取默认显示。
用例:

1 
任务5-form表单的用法_第1张图片
多行文本用例

下拉选择框
下拉选择框允许你在一个有限的空间设置多种选项。
代码格式:
<select name="..." size="..." multiple>
<option value="..." selected>...</option>
  ...  
</select>  
属性解释:
size属性定义下拉选择框的行数;  
name属性定义下拉选择框的名称;  
multiple属性表示可以多选,如果不设置本属性,那么只能单选;  
value属性定义选择项的值;  
selected属性表示默认已经选择本选项。

<select name="mySelt" size="1" >
<option value="1" selected>baidu.com</option>
<option value="2">sina.com</option>
<option value="3">sohu.com</option>
</select>
下拉文本框

标签
label 元素不会向用户呈现任何特殊效果。不过,它为鼠标用户改进了可用性。如果您在 label 元素内点击文本,就会触发此控件。就是说,当用户选择该标签时,浏览器就会自动将焦点转到和标签相关的表单控件上。


2.post 和 get 方式的区别?

FORM中的get post方法区别Form中的get和post方法,在数据传输过程中分别对应了HTTP协议中的GET和POST方法。二者主要区别如下:
1)Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。
2) Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用 “&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。
3) Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后 放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。 Post的所有操作对用户来说都是不可见的。
4)Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。
5)Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。
6)Get是Form的默认方法。

3.在input里,name 有什么作用?

name 定义input的名称属性,作为可与服务器交互数据的input元素的服务器端的标示。
注意和id属性的区别:name属性是和服务器通信时使用的名称;而id属性是浏览器端使用的名称,该属性主要是为了方便客户端编程,而在css和JavaScript中使用的。

4.radio 如何 分组?

使用name相同的一组单选按钮,不同radio设定不同的value值,这样通过取指定name的值就可以知道谁被选中了,不用单独的判断。

5.placeholder 属性有什么作用?

HTML5新增的另一个属性,当input或者textarea设置了该属性后,该值的内容将作为灰字提示显示在文本框中,当文本框获得焦点时,提示文字消失。
例:

placeholder属性

6.type=hidden隐藏域有什么作用? 举例说明

隐藏域在页面中对于用户是不可见的。它有两个作用:
1)暂存信息,(用户看不到),便于设计者随时调用程序。
2)用于安全性校验,例如通过设置hidden隐藏域,服务器可以验证用户权 限,避免伪造的假网站提交数据。

你可能感兴趣的:(任务5-form表单的用法)