S1/使用HTML语言和CSS开发商业站点/03-表单

表单的内容

创建表单后,就可以在表单中放置控件以接受用户的输入。这些控件通常放在<form>……</form>标签对之间一起使用,也可以在表单之外用来创建用户界面。

表单标签及表单属性

在HTML中,使用<form>标签来实现表单的创建,该标签用于在网页中创建表单区域,属于一个容器标签,其他表单标签需要在它的范围中才有效,<input>便是其中一个,用以设定各种输入资料的方法。表单标签有两个常用的属性,如下表所示。

<form>标签的属性


属性


说明


Action


此属性指示服务器上处理表单输出的程序。一般来说,当用户单击表单上的“提交”按钮后,信息发送到Web服务器上,由action属性所指定的程序处理。语法为action="URL"。如果action属性的值为空,则默认表单提交到本页。


Method


此属性告诉浏览器如何将数据发送给服务器,他指定向服务器发送数据的方法(用post方法还是用get方法)。如果值为get,浏览器将创建一个请求,该请求包含页面URL、一个问号和表单的值。浏览器会将该请求返回给URL中指定的脚本,以进行处理。如果将值指定为post,表单上的数据会作为一个数据块发送到脚本,而不不使用请求字符串。语法为method=(getr|post)

采用post和get方法提交表单信息后浏览器地址栏的变化。

以post方式提交表单,在名字和密码标签后,分别输入用户名lucker和密码123456,单击提交按钮,地址栏中的URL信息没有发生变化,这就是以post方式提交表单的特点。

以get方式提交表单,在页面单击提交按钮提交表单信息之后,在浏览器的地址栏中,URL信息会发生变化。仔细观察不难发现,在URL信息中清晰地显示出表单提交的数据内容,即刚刚输入的用户名和密码都完全显示在地址栏中,清晰可见。

1、即,psot提交方式不会改变地址栏状态,表单数据不会被显示。

2、即,使用get提交方式,地址栏状态会发生变化,表单数据会在URL信息中显示。

所以,基于以上两点区别,post方式提交的数据安全性要明显高于get方式提交的数据。

表单元素及格式

<input>标签中有很多属性,下面对一下比较常用的属性进行整理。

<input>元素的属性


属性


说明


Type


此属性指定表单元素的类型。可用的选项有text、password、checkbox、radio、submit、reset、file、hidden、image和button。默认选择为text


Name


此属性指定表单元素的名称。例如,如果表单上有几个文本框,可以按名称来标识他们,如text1、text2等


Value


此属性是可选属性,它指定表单元素的初始值。但如果type为radio,则必须指定一个值


Size


此属性指定表单元素的初始宽度。如果type为text或password,这表单元素的大小以字符为单位。对于其他输入类型,宽度以像素为单位


Maxlength


此属性用于指定可在text或password元素中输入的最大字符数。默认值为无限大


Checked


指定按钮是否是被选中的。当输入类型为radio和checkbox时,使用此属性

1、文本框

在表单中最常用、最常见的表单输入元素就是文本框(text),它用于输入单行文本信息,如用户名的输入框。若要在文档的表单里创建一个文本框,将表单元素type属性设为text就可以了。还可以分别使用size属性和value属性对登录名的长度及形姓氏的默认值进行设置。还可以使用maxlength属性指定输入的数据长度。例如,登录名的长度不得超过20个字符,代码如下。

<p>登录名:

<input name="sname"  type="text"  size="30"  maxlength="20">

</p>

上面的代码设置结果是,文本框显示的长度为30,而允许输入的最多字符个数为20。

对于size属性和maxlength属性一定要能够严格的进行区分作用,size属性用于指定文本框的长度,而maxlength属性用于指定文本框输入的数据长度,这就是二者的区别。

2、密码框

密码框与文本框类似,区别在于需要设置文本框控件的type属性设为password。设置了type属性后,在密码框输入的字符全部都以黑色实心的圆点来显示,从而实现了对数据的处理。

3、单选按钮

单选按钮空间用于一组相互排斥的值,组中的每个单选按钮控件应具有相同的名称,用户一次只能选择一个选项。只有从组中选定的单选按钮才会在提交的数据中提交对应的数值,在使用单选按钮时,需要一个显式的value属性。

如果希望在页面加载时,单选按钮有一个默认的选项,那么可以使用checked属性。例如,性别选项默认选中为“男”,则修改代码如下。

<input name="gen" type="radio" class="input" value="男" checked="checked">男

4、复选框

复选框与单选按钮有些类似,只不过复选框允许用户选择多个选项。复选框的类型是checkbox,即将表单元素的type属性设为checkbox就可以创建一个复选框。复选框的命名与单选按钮有些区别,既可以多个复选框选用相同的名称,也可以各自具有不同的名称,关键是看如何使用复选框。用户可以选中某个复选框,也可以取消选中。一旦用户选中了某个复选框,在表单提交时,会将复选框的name值和对应的value值一起提交。

与单选按钮一样,checkbox复选框也可以设置默认选项,同样使用checked属性进行设置。例如,将爱好中的运动选项默认选中,则代码修改如下。

<input type="checkbox" name="cb1" value="sports checked="checked">运动

单选按钮应具有相同的名字,便于互斥选择;而复选框的名称则要根据应用环境来确定是否相同。通常情况下,如果选项之间是并列关系,就需要设置为相同的名称,以便能够同时获取。例如,兴趣爱好,一个人有多个兴趣爱好,这样复选框设置相同名称,以便在提交数据时能够一次性得到所有选择的兴趣爱好选项。否则,每个选项都需要单独进行读取,从而降低了效率。

5、列表框

列表框是为了用户快速、方便、正确的选择一些选项,并且节省页面空间,它是通过<select>标签和<option>标签来实现的。<select>标签用于显示可供用户选择的下拉列表,每个选项由一个<option>标签表示,<select>标签必须包含至少一个<option>标签。

语法:

<select name="指定列表名称" size="行数">

<option value="可选项的值" selected="selected">……</option>

<option value="可选项的值" >……</option>

</select>

其中,再有多条选项可供用户滚动查看时,size确定列表中可同时看到的行数;selected表示该选项在默认情况下是被选中的,而且一个列表框中只能有一个列表项默认被选中,如同单选按钮组那样。

下拉列表框中添加的option选项会按照顺序进行排列,但是如果希望其中某个选项默认显示,就需要使用selected属性来进行设置。例如,让月份默认显示十月,则相应代码修改如下。

<option value="10" selected="selected">十月</option>

6、按钮

按钮在表单中经常用到,在HTML中按钮分为3种,分别是普通按钮(button)、提交按钮(submit)和重置按钮(reset)。普通按钮主要用来响应onclick事件,提交按钮用来提交表单信息,重置按钮用来清除表单中已填信息。

语法:

<input type="reset" name="Reset" value="重填">

其中,type="button"表示是普通按钮;type="submit"表示是提交按钮;type="reset"表示是重置按钮。Name用来给按钮命名,value用来设置显示在按钮上的文字。

/1/reset按钮:用户单击该按钮后,不论表单中是否已经填写或输入数据,表单中各个表单元素都会被重置到初始状态,而填写或输入的数据将被清空。

/2/submit按钮:用户单击该按钮后,表单将会提交到action属性所指定的URL,并传递表单数据。

/3/button按钮:属于普通的按钮,需要与事件关联使用。Onclick事件

说明:onclick事件是表单元素被点击时所激发的事件,并只限于按钮。在事件中可以调用相应的脚本代码,执行一些特定的客户端程序。

实现图片按钮的效果有多种方法,比较简单的方式就是配合使用“type”和“src”属性,如下所示。

<input type="image" src="images/login.gif" />

7、多行文本域

用于在网页中输入两行或两行以上的文本时,它使用的标签是<textarea>。

语法:

<textarea name="textarea" cols="显示的列的宽度" rows="显示的行数">

文本内容

</textarea>

其中,cols用来指定多行文本框的列的宽度;rows属性用来指定多行文本框的行数。在<textarea>……</textarea>标签对中不能使用value属性来赋初始值。

8、文件域

文件域的作用是用于实现文件的选择,在应用时只需把type属性设为file即可。在实际应用中,文件域通常应用于文件上传的操作,如选择需要上传的文本、图片等。

在使用文件域时,需要特别注意的是,包含文件域的表单,由于提交的表单数据包括普通的表单数据、文件数据等多部分内容,所以必须设置表单的“entype”编码书型为“multipart/from-data”,表示将表单数据分为多部分提交。

设置表单的隐藏域

将tytpe属性设置为hidden隐藏类型即可创建一个隐藏域。

表单的只读与禁用设置

在某些情况下,需要对表单元素进行设置,即设置表单元素为只读或禁用。他们常见的应用场景如下。

A、只读场景:网站服务器方不希望用户修改的数据,这些数据在表单元素中显示。例如,注册或交易协议、商品价格等。

B、禁用场景:只有满足某个条件后,才能选用某项功能。例如,只有用户同意注册协议后,才允许单击“注册”按钮;播放器控件在播放状态时,不能单击“播放”按钮等。

制度和禁用效果分别通过设置“readonly”和“disabled”属性来实现。

通常只读属性用于不希望用户对数据进行修改的场合,而禁用则可以配合其他控件使用。最常见的就是在安装程序时,如果用户不选中“同意安装许可协议”的复选框,则“安装”或“下一步”按钮无法使用“

规范:W3C XHTML标准中,规定属性值不能省略,要求写为属性=“属性值”的形式。

例如,下拉列表框的默认选中,应写为selected="selected",而不能仅写selected。同理,复选框的默认选中,应写为checked="checked",只读应写为readonly="readonly",禁用应写为disabled="disabled"。

语义化的表单

1、域

在表单中,可以使用<fieldset>标签实现域的定义。什么是域呢?简单地说就是将一组表单元素放到<fieldset>标签内,浏览器就会以特殊的方式来显示他们,这些表单元素可能有特殊的边界、效果。

使用<fieldset>标签后,该标签会将表单内容进行整合,从而生成一组与表单相关的字段。

2、域标题

所谓域标题就是给创建的域设置一个标题。设置域标题需要使用一个新的标签,即<legend>标签,在该标签内的内容就被视为域的标题。

通常<fieldset>标签与<legend>标签会一起使用。

表单元素的标注

对表单元素进行标注,这样做的目的就是为了增强鼠标的可用性。这是因为使用表单元素标注时,在客户端呈现的效果不会有任何特殊的改进。但是如果当用户使用鼠标单击标注的文本内容时,浏览器会自动将焦点转移到与该标注相关的表单元素上。

为表单元素进行标注时,需要使用<label>标签,该标签的语法如下。

语法:

<label for="表单元素的id">标注的文本</label>

在<label>标签中,使用了for属性来指定当鼠标单击标注文本时,焦点对应的表单元素。

<form>

请选择性别:

<label for="male">男</label>

<input type="radio" name="gender" id="male" />

<label for="female">女</label>

<input type="radio" name="gender" id="female" />

</form>

上面代码中,对于表单元素而言,其name属性与id属性都是必须的。Name属性由表单负责处理,而id属性是给<label>标签和表单元素进行关联使用的。

用户在选择性别是,可以不用单击单选按钮,而是可以用鼠标直接单击与单选按钮对应的文本。例如,在本例中,鼠标单击文本“男”时,则性别男对应的单选按钮被自动选中。

时间: 2024-11-15 12:23:25

S1/使用HTML语言和CSS开发商业站点/03-表单的相关文章

S1/使用HTML语言和CSS开发商业站点/02-列表、表格和框架

列表的分类: 1.无序列表 使用<ul>标签作为无序列表的声明,使用<li>标签作为每个列表项的起始.<ul>标签有一个type属性,这个属性的作用就是制定在显示列表时所采用的项目符号类型. type属性的取值 取值 说明 disc 项目符号显示为实体圆心,默认值 square 项目符号显示为实体方心 circle 项目符号显示为空心圆 2.有序列表 无序列表与有序列表的区别就在于,有序列表的各个列表项有先后顺序,所以会使用数字进行标识.有序列表使用<ol>

S1/使用HTML语言和CSS开发商业站点/05-CSS美化网页

<span>标签 在HTML中,<span>标签是被用来组合HTML文档中的行内元素的,它没有固定的格式表示,只有对它应用CSS样式时,他才会产生视觉上的变化. <span>标签可以为<p>标签中的部分文字添加样式,而且不会改变文字的显示方向.他不会像<p>标签和标题标签那样,每对标签独占一个矩形区域. 字体样式 常用字体属性 属性名 含义 举例 Font-family 设置字体类型 Font-family:"隶书"; Fon

S1/使用HTML语言和CSS开发商业站点/04-初识CSS

CSS全称为层叠样式表. CSS基本语法结构 CSS规则由两部分构成,即选择器和声明.声明必须放在大括号{}中,并且声明可以是一条或多条:每条声明由一个属性和值组成,属性和值用冒号分开,每条语句以英文分号结尾.如下所示. h1{ font-size:12px; color:#F000; } font-size:12px;和color:#F000;表示两条声明,声明中font-size和color表示属性,而12px和#F000则是对应的属性值. 注意:在CSS的最后一条声明中,用以结束的“;”可

S1/使用HTML语言和CSS开发商业站点/06-盒子模型

盒子模型属性有边框.内边距和外边距. 1.边框(border):对应包装盒的纸壳,他一般具有一定的厚度. 2.内边距(padding):位于边框内部,是内容与边框的距离,即对应包装盒的填充部分,所以也被称为填充. 3.外边距(margin):位于边框外部,边框外面周围的间隙,所以也被称为边界. 盒子模型除了边框.内边距.外边距之外,还应包括元素内容本身,所以完整的盒子模型平面结构图所示. 因为盒子是矩形结构,所以边框.内边距.外边距这些属性部分都分别对应上(top)下(bottom)左(left

S1/使用HTML语言和CSS开发商业站点/01-HTML基础

HTML会是一种超文本标记语言(Hyper Text Mark Language),也就是说,HTML不是一种编程语言,仅是一种标记语言(Markup Language). 网页基本信息: 1.DOCTYPE声明 HTML代码中最上面有两行关于“DOCTYPE”文档类型的声明,他约束HTML文档结构,检验是否符合相关Web标准,同时高速浏览器,使用哪种规范来解释这个文档中的代码.DOCTYPE声明必须位于HTML文档的第一行,XHTML3.0规定了3种级别的声明. (1)Strict(严格类型)

S1/使用HTML语言和CSS开发商业站点/07-浮动

浮动 在标准文档流中,一个块级元素在水平方向会自动伸展,直到包含它的元素的边界,在竖直方向和其他的块级元素依次排列. 要实现浮动需要在CSS中设置float属性,默认值为none,也就是标准文档流块级元素通常显示的情况.如果将float属性的值设置为left或right,元素就会向其父元素的左侧或右侧浮动,同时默认情况下,盒子的宽度不再伸展,而是根据盒子里面的内容和宽度来确定,这样就能够实现网页布局中的“1-2-1”或“1-3-1”布局类型. 浮动在网页中的应用 在CSS中,使用浮动(float

S1/使用HTML语言和CSS开发商业站点/08-定位网页元素

在CSS中有3种基本的定位机制,分别是标准流.浮动和绝对定位.通常在网页中除非专门指定某种元素的定位,否则所有元素都在标准流中定位,也就是说标准流中元素的位置由在XHML中的位置决定. 在前面的章节已经学习了标准流和浮动,使用浮动的方式可以定位网页元素.但是仅使用浮动一种方式,完成不了网页中很多更为复杂的网页效果. Position属性 Position属性yufloat属性一样,都是CSS排版中非常重要的概念.Position从字面意思上看就是指定盒子的位置,指它相对父级的位置和相对它自身应该

使用HTML语言和CSS开发商业站点(9)

#div_1 dl{ margin:0px;/*dl默认有外边距 跟ul一样*/ padding:0px; height:46px; margin-top:15px;} #div_1 dl dd{ margin:0px;/*dd默认有外边距*/ float:left; margin-left:10px; height:100%; line-height:46px; } 好的,使用HTML语言和CSS开发商业站点 就到这里结束    接下来是    使用Java实现面向对象编程 多多关注.评论,谢

HTML语言和CSS开发商业站点 错题

1.关于css为什么会出现Bug说法不正确的是(). (选项两项) A.编写CSS样式是需要在不同浏览器中实现表现一致 B.各大主流浏览器由于不同厂家开发,浏览器使用的内核不同,支持CSS的程度不同 C.网页制作师在编写CSS样式时命名不规范,样式本身有BUG D.网页设计师在设计时起名不对 正确答案是 C.D 分析:各大主流浏览器由于不同厂家开发,各大厂商处于自身利益,因而浏览器使用的内核不同,支持CSS的程度不同,导致了显示差异,因此编写CSS样式时需要考虑在不同浏览器中实现表现