??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品影院久久久久久,亚洲第一成年免费网站,337P日本欧洲亚洲大胆艺术图 http://www.tkk7.com/zhuyan/category/24277.htmlJAVA启发?/description>zh-cn Fri, 20 Jul 2007 10:23:40 GMT Fri, 20 Jul 2007 10:23:40 GMT 60 玩{表单之花栯? http://www.tkk7.com/zhuyan/articles/131398.html朱岩 朱岩 Fri, 20 Jul 2007 01:14:00 GMT http://www.tkk7.com/zhuyan/articles/131398.html http://www.tkk7.com/zhuyan/comments/131398.html http://www.tkk7.com/zhuyan/articles/131398.html#Feedback 0 http://www.tkk7.com/zhuyan/comments/commentRss/131398.html http://www.tkk7.com/zhuyan/services/trackbacks/131398.html 表单的外观,也是最为直接的花样Q可以通过改变它来实现Ҏ(gu)Q本文分两个出发Ҏ(gu)讲述QCSS法和图像魔法?br>1、CSS法 CSSQ就是大家知道的层叠样式单,它可以定义页面元素的外观Q包括字体样式、背景颜色和囑փ样式、边框样式、补白样式、边界样式等{,下面׃q几个方面出发,讨论怎样CSS应用到表单中Q彻底美化它Q?br>1.1 字体样式的应?/strong> 字体样式包括Q字体族U?font-family)、字体风?font-style)、字体变?font-variant)、字体加_?font-weight)、字体大?font-size)、字?font)Q具体的定义Ҏ(gu)Q在q里不详l讲qͼ可以参考它的资料?br> 也许你已l注意到Q按钮上的文字不漂亮Q其实可以通过CSS字体样式来解冻I同样圎ͼ其它的几个涉?qing)到文字的表单项Q例如,文本框、多行文本框、口令框、下拉选择框都可以应用字体样式?br> Z(jin)充分展示q些应用Q下例特别设计了(jin)几种样式Q在实际应用中,不必q么凌ؕQ灵z运用:(x)样例1Q?/strong>表单元素的字体样式展C?br>
结Q?/strong>只要我们对字体的样式熟?zhn)了(jin),可以灵zd变,不一定要在标{N面用style来定义,完全可以在<headQ里定义Q或者外部引用CSS文gQ用到的时候引用一下就能达到预期的效果?br>1.2 背景颜色和图像样式的应用 有很多时候,|页׃颜色的搭配,不得不对表单的背景颜色和囑փ样式q行设计Q背景颜色利用background-color属性,背景囑փ利用background-image属性,颜色和图像同栯够得到意想不到的效果?br> 样例2Q?/strong> 表单元素的背景展C?
结Q?/strong>用好background-color属性和background-image属性,可以设计很?#8220;?#8221;表单?jin)?br>1.3 Ҏ(gu)样式的应? 也许你觉得表单的Ҏ(gu)q于LQ我们能否设计单U条Q或者其它的Ҏ(gu)样式呢?当然可以Q?br> 和边框有关的属性有Q边框式样border-style、上Ҏ(gu)border-top、右Ҏ(gu)border-right、下Ҏ(gu)border-bottom、左Ҏ(gu)border-left、边框颜色border-colr、边框宽?border-width、上Ҏ(gu)宽度border-top-width、右Ҏ(gu)宽度border-right-width、下Ҏ(gu)宽度border-bottom-width、左Ҏ(gu)宽度border-left-width、边?borderQ这里不作详l的讲述Q请参考有兌料?br> 样例3Q?8U边框Ş式的展示
文本框有8U类型边框样式,即border-styleQ分别展C在本例中,Ҏ(gu)宽度的设|有一个规律:(x) border-width: [ thin | medium | thick | Q长度> ]{1,4} Ҏ(gu)宽度用一到四个值来讄元素的边框宽度,它们分别被应用于上、右、下和左Ҏ(gu)宽度。如果只l出一个|它被应用于所有边框宽度。如果两个或三个值给Z(jin)Q省略了(jin)的g对边相等 例如Q?br>
<input type="text" name="RedF" style="border-color: #006600; border-style: dotted; border-width: 1px">
Ҏ(gu)颜色的设|有一个规律:(x)border-colr: Q颜Ԍ{1,4} Ҏ(gu)颜色用一到四个值来讄元素的边框颜艌Ӏ如果四个值都l出?jin),它们分别被应用于上、右、下和左Ҏ(gu)颜色。如果只l出一个|它被应用于所有边框颜艌Ӏ如果两个或三个值给Z(jin)Q省略了(jin)的g对边相等?br> 对于多行文本框以?qing)按钮,讄?gu)的方法和文本框一P不再陈述Q? ׃下拉选择框select不支持边框的讄Q所以对它设|是徒劳的; 单选按钮和复选按钮的Ҏ(gu)Q设|的效果不十分协调,所以徏议不要对它们讄Q不然有“画蛇添”之感?br> 样例4Q边框的Ҏ(gu)设计展示 聪明的读者一定会(x)惛_Q如果设计单Ҏ(gu)Q一定更加漂亮,对!下面我们来尝试以下部分边框的讄效果Q本例仅仅以Solid和dotted两种cd的边框作演示Q其它类型的Ҏ(gu)原理相同Q?br>
注意--Ҏ(gu)cd的外观如下:(x) none Q无Ҏ(gu)。与M指定的border-width值无养I dotted Q点U; dashed Q虚U; solid Q实U边框; double Q双U边框。两条单U与光隔的和等于指定的border-width| groove Q?DҎ(gu)Q? ridge Q边框突P inset Q?D凹边Q? outset Q?D凸边2、图像魔?/strong> 囑փQ是|页的重要元素,能否应用到表单中呢?接下来,我们用图像来攚w死板的表单Q分两个部分来探讨:(x)用图像代替按钮、用背景囄化表单元素?br>2.1 用图像代替按?/strong> ׃默认的表单按钮太丑陋Q绝大多数的|站采用?jin)图像按钮,那么Q我们通过两个实例来看看怎样实现的:(x) 样例5Q用囑փ代替提交按钮Q?/strong> 当只有一个提交按钮的时候,可以单地实现Q不用加事g函数Q代码是Q?br><input type="image" name="..." src="url" width="" height="..." border="..."> 除了(jin)标签改ؓ(f)input type="image"以外Q其它的属性和 <img> 标签的属性是一L(fng)Q例如:(x)
是不是只要用囄可以代替所有的按钮呢?是的Q不q,不是上面q么单了(jin)Q必d上事件函敎ͼ不然的话Q图片都是提交按钮,不能完成复位{功能,看看下面的例子就知道?jin)?x)
注意Q? 代替submit按钮的图片代码格式是 <input type="image" name="..." src="..." onClick="document.formName.submit ()"> 代替reset按钮的代码图片格式是 <input type="image" name="..." src="..." onClick="document.formName.reset ()"> 注:(x)q里的formName是表单的name属性倹{?br>2.2 用背景图化表单元素 其实Q前面已l提到过Q用background-image:url()属性来定义表单元素的背景图Q这里仅举一例,可以看到Q除?jin)select没有效果以外Q其它的都可以配合网늚背景来设|它们?br>样例6Q背景图的设|?/strong>
]]> 玩{表单之花栯?/title> http://www.tkk7.com/zhuyan/articles/131397.html朱岩 朱岩 Fri, 20 Jul 2007 01:12:00 GMT http://www.tkk7.com/zhuyan/articles/131397.html http://www.tkk7.com/zhuyan/comments/131397.html http://www.tkk7.com/zhuyan/articles/131397.html#Feedback 0 http://www.tkk7.com/zhuyan/comments/commentRss/131397.html http://www.tkk7.com/zhuyan/services/trackbacks/131397.html 本专题(sh)最基础的表单知识,到表单的高应用Q让你有一个比较全面地认识Q相信你在读完本专题?sh)后Q一定会(x)对表单非常熟(zhn)?br> 一、表单概q?/strong> 表单Q在|页中的作用不可视Q主要负责数据采集的功能Q比如你可以采集讉K者的名字和eQmail地址、调查表、留a等{?br> 1、表单的l成 一个表单有三个基本l成部分Q?
表单标签Q这里面包含?jin)处理表单数据所用CGIE序的URL以及(qing)数据提交到服务器的方法?
表单域:(x)包含?jin)文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文g上传框等?
表单按钮Q包括提交按钮、复位按钮和一般按钮;用于数据传送到服务器上的CGI脚本或者取消输入,q可以用表单按钮来控制其他定义了(jin)处理脚本的处理工作?/li>
Z(jin)֏(qing)不同的网设计工P本文只讲qC码的设计Q不具体讲述操作Ҏ(gu)Q下面就是表单的HTML代码设计要点Q?br> 1.1 表单标签QformQ</formQ?/font> 功能Q?/strong>用于x(chng)表单Q定义采集数据的范围Q也是QformQ和Q?formQ里面包含的数据被提交到服务器或者电(sh)子邮仉?br> 语法Q?/strong>QFORM ACTION="URL" METHOD="GET|POST" ENCTYPE="MIME" TARGET="..."Q? . .Q?FORMQ? 属性解?/strong>见下表:(x)
action=url
指定一来处理提交表单的格式.它可以是一个URL地址(提交l程?或一个电(sh)子邮件地址.
method=get或post
指明提交表单的HTTPҎ(gu).可能的gؓ(f)Q?
postQPOSTҎ(gu)在表单的d包含名称/值对q且无需包含于actionҎ(gu)的URL?
getQ不赞成。GETҎ(gu)把名U?值对加在action的URL后面q且把新的URL送至服务?q是往前兼容的~省?q个值由于国际化的原因不赞成使用.
enctype=cdata
指明用来把表单提交给服务器时(当methodgؓ(f)"post")的互联网媒体形式.q个Ҏ(gu)的~省值是"application/x-www-form-urlencoded"
TARGET="..."
指定提交的结果文档显C的位置Q?
_blank Q在一个新的、无名浏览器H口调入指定的文档;
_self Q在指向q个目标的无素的相同的框架中调入文档Q?
_parent Q把文档调入当前框的直接的父FRAMESET框中Q这个值在当前框没有父框时{h(hun)于_selfQ?
_top Q把文档调入原来的最剙的浏览器H口?因此取消所有其它框?Q这个值等价于当前框没有你框时的_self.
例如Q?/strong> Qform action="http://www.yesky.com/test.asp" method="post" target="_blank"Q?..Q?formQ?/span> 表示表单向http://www.yesky.com/test.asp以post的方式提交,提交的结果在新的面昄Q数据提交的媒体方式是默认的application/x-www-form-urlencoded方式Q?1.2 表单?/strong> 表单域包含了(jin)文本框、多行文本框、密码框、隐藏域、复选框、单选框和下拉选择框等Q用于采集用L(fng)输入或选择的数据,下面分别讲述q些表单域的代码格式Q?1.2.1 文本?/strong> 文本框是一U让讉K者自p入内容的表单对象Q通常被用来填写单个字或者简短的回答Q如姓名、地址{? 代码格式Q<input type="text" name="..." size="..." maxlength="..." value="..."Q?br> 属性解释:(x) type="text"定义单行文本输入框; name属性定义文本框的名Uͼ要保证数据的准确采集Q必d义一个独一无二的名Uͼ size属性定义文本框的宽度,单位是单个字W宽度; maxlength属性定义最多输入的字符数? value属性定义文本框的初始?br>样例1Q?/strong> 样例1代码Q?/p>
Qinput type="text" name="example1" size="20" maxlength="15"Q?br> 1.2.2 多行文本?/strong> 也是一U让讉K者自p入内容的表单对象Q只不过能让讉K者填写较长的内容?br> 代码格式Q<TEXTAREA name="..." cols="..." rows="..." wrap="VIRTUAL"Q</TEXTAREAQ?br> 属性解释:(x) name属性定义多行文本框的名Uͼ要保证数据的准确采集Q必d义一个独一无二的名Uͼ cols属性定义多行文本框的宽度,单位是单个字W宽度; rows属性定义多行文本框的高度,单位是单个字W宽度; wrap属性定义输入内容大于文本域时显C的方式Q可选值如下:(x)
默认值是文本自动换行Q当输入内容过文本域的双界时?x)自动{C一行,而数据在被提交处理时自动换行的地方不?x)有换行W出玎ͼ
OffQ用来避免文本换行,当输入的内容过文本域右边界Ӟ文本向左滚动,必须用Return才能插入点Ud下一行;
VirtualQ允许文本自动换行。当输入内容过文本域的双界时?x)自动{C一行,而数据在被提交处理时自动换行的地方不?x)有换行W出玎ͼ
PhysicalQ让文本换行Q当数据被提交处理时换行W也被一h交处理?
样例2Q?/strong>
样例2代码Q?/p>
QTEXTAREA name="example2" cols="20" rows="2" wrap="PHYSICAL"Q</TEXTAREAQ?br>
1.2.3 密码?/strong> 是一U特D的文本域,用于输入密码。当讉K者输入文字时Q文字会(x)被星h其它W号代替Q而输入的文字?x)被隐藏?br> 代码格式Q<input type="password" name="..." size="..." maxlength="..."Q?br> 属性解释:(x) type="password"定义密码框; name属性定义密码框的名Uͼ要保证数据的准确采集Q必d义一个独一无二的名Uͼ size属性定义密码框的宽度,单位是单个字W宽度; maxlength属性定义最多输入的字符数?样例3Q?/strong> 样例3代码Q?/p>
Qinput type="password" name="example3" size="20" maxlength="15"Q?br> 1.2.4 隐藏?/strong> 隐藏域是用来攉或发送信息的不可见元素,对于|页的访问者来_(d)隐藏域是看不见的。当表单被提交时Q隐藏域׃(x)信息用你设|时定义的名U和值发送到服务器上? 代码格式Q<input type="hidden" name="..." value="..."Q?br> 属性解释:(x) type="hidden"定义隐藏域; name属性定义隐藏域的名Uͼ要保证数据的准确采集Q必d义一个独一无二的名Uͼ value属性定义隐藏域的?br> 例如Q<input type="hidden" name="ExPws" value="dd"Q?br>1.2.5 复选框 复选框允许在待选项中选中一以上的选项。每个复选框都是一个独立的元素Q都必须有一个唯一的名U?br> 代码格式Q<INPUT type="checkbox" name="..." value="..."Q?br> 属性解释:(x) type="checkbox"定义复选框Q?br> name属性定义复选框的名Uͼ要保证数据的准确采集Q必d义一个独一无二的名Uͼ value属性定义复选框的?br>样例4Q?/strong> yesky.com Chinabyte.com 样例4代码Q? Qinput type="checkbox" name="yesky" value="09"Qyesky.com Qinput type="checkbox" name="Chinabyte" value="08"QChinabyte.com 1.2.6 单选框 当需要访问者在待选项中选择唯一的答案时Q就需要用到单选框?jin)?br> 代码格式Q<input type="radio" name="..." value="..."Q?br> 属性解释:(x) type="radio"定义单选框Q?br> name属性定义单选框的名Uͼ要保证数据的准确采集Q单选框都是以组为单位用的Q在同一l中的单选项都必ȝ同一个名Uͼ value属性定义单选框的|在同一l中Q它们的域值必L不同的?br> 样例5Q?/strong> yesky.com Chinabyte.com 样例5代码Q? Qinput type="radio" name="myFavor" value="1"Qyesky.com Qinput type="radio" name="myFavor" value="2"QChinabyte.com 1.2.7 文g上传?/strong> 有时候,需要用户上传自q文gQ文件上传框看上d其它文本域差不多Q只是它q包含了(jin)一个浏览按钮。访问者可以通过输入需要上传的文g的\径或者点?yn)L览按钮选择需要上传的文g? 注意Q在使用文g域以前,请先定你的服务器是否允许匿名上传文件。表单标{中必须讄ENCTYPE="multipart/form-data"来确保文件被正确~码Q另外,表单的传送方式必设|成POST?br> 代码格式Q<input type="file" name="..." size="15" maxlength="100"Q?br> 属性解释:(x) type="file"定义文g上传框; name属性定义文件上传框的名Uͼ要保证数据的准确采集Q必d义一个独一无二的名Uͼ size属性定义文件上传框的宽度,单位是单个字W宽度; maxlength属性定义最多输入的字符数? 样例6Q?/strong> 样例6代码Q?/p>
Qinput type="file" name="myfile" size="15" maxlength="100"Q?br> 1.2.8 下拉选择?br> 下拉选择框允怽在一个有限的I间讄多种选项?br> 代码格式Q?br> Qselect name="..." size="..." multipleQ?br> Qoption value="..." selectedQ?..Q?optionQ?br> ... Q?selectQ?br> 属性解释:(x) size属性定义下拉选择框的行数Q?br> name属性定义下拉选择框的名称Q?br> multiple属性表C可以多选,如果不设|本属性,那么只能单选; value属性定义选择的| selected属性表C默认已l选择本选项?br> 样例7Q?
yesky.com
chinabyte.com
样例7代码Q? Qselect name="mySel" size="1"Q?br> Qoption value="1" selectedQyesky.comQ?optionQ?br> Qoption value="d2"Qchinabyte.comQ?optionQ?br> Q?selectQ?br> 样例8Q?/strong>
yesky.com
chinabyte.com
internet.com
按Ctrl可以多?br> 样例8代码Q? Qselect name="mySelt" size="3" multipleQ?br> Qoption value="1" selectedQyesky.comQ?optionQ?br> Qoption value="d2"Qchinabyte.comQ?optionQ?br> Qoption value="3"Qinternet.comQ?optionQ?br> Q?selectQ?br> 1.3 表单按钮 表单按钮控制表单的运作?br>1.3.1 提交按钮 提交按钮用来输入的信息提交到服务器?br> 代码格式Q<input type="submit" name="..." value="..."Q?br> 属性解释:(x) type="submit"定义提交按钮Q?br> name属性定义提交按钮的名称Q?br> value属性定义按钮的昄文字Q?br> 样例9Q?/strong> 样例9代码Q?/p>
Qinput type="submit" name="mySent" value="发?Q?strong>
1.3.2 复位按钮 复位按钮用来重置表单?br> 代码格式Q<input type="reset" name="..." value="..."Q?br> 属性解释:(x) type="reset"定义复位按钮Q?br> name属性定义复位按钮的名称Q?br> value属性定义按钮的昄文字Q?br> 样例10Q?/strong>
样例10代码Q?/p>
Qinput type="reset" name="myCancle" value="取消"Q?br>
1.3.3 一般按?/strong> 一般按钮用来控制其他定义了(jin)处理脚本的处理工作?br> 代码格式Q<input type="button" name="..." value="..." onClick="..."Q?br> 属性解释:(x) type="button"定义一般按钮; name属性定义一般按钮的名称Q?br> value属性定义按钮的昄文字Q?br> onClick属性,也可以是其它的事Ӟ通过指定脚本函数来定义按钮的行ؓ(f)Q?br>样例11Q?/strong>
样例11代码Q?br> Qinput type="button" name="myB" value="保存" onClick="javascript:alert('it is a button')"Q?br>-------------------------------------------------------------
二、表单外观的化 很多时候,我们仅仅Z(jin)实现数据采集q个功能来用表单,常看到的表单都是“千h一?#8221;、毫无生气,本专题尝试着来改变这一现象Q试图赋予表单一个丰富多彩的面貌?br>表单的外观,也是最为直接的花样Q可以通过改变它来实现Ҏ(gu)Q本文分两个出发Ҏ(gu)讲述QCSS法和图像魔法?br> 1、CSS法 CSSQ就是大家知道的层叠样式单,它可以定义页面元素的外观Q包括字体样式、背景颜色和囑փ样式、边框样式、补白样式、边界样式等{,下面׃q几个方面出发,讨论怎样CSS应用到表单中Q彻底美化它Q?br> 1.1 字体样式的应?/strong> 字体样式包括Q字体族U?font-family)、字体风?font-style)、字体变?font-variant)、字体加_?font-weight)、字体大?font-size)、字?font)Q具体的定义Ҏ(gu)Q在q里不详l讲qͼ可以参考它的资料?br> 也许你已l注意到Q按钮上的文字不漂亮Q其实可以通过CSS字体样式来解冻I同样圎ͼ其它的几个涉?qing)到文字的表单项Q例如,文本框、多行文本框、口令框、下拉选择框都可以应用字体样式?br> Z(jin)充分展示q些应用Q下例特别设计了(jin)几种样式Q在实际应用中,不必q么凌ؕQ灵z运用:(x) 样例12Q?/strong>表单元素的字体样式展C?
多行文本框的背景是一个图像,代码Q?br>QTEXTAREA name="RedFld2" cols="25" rows="3" wrap="VIRTUAL" style="background-image: url(back.gif)"Q</TEXTAREAQ?
submit1按钮的背景是黄色的,代码Q?br>Qinput type="submit" name="Submit3" value="Submit1" style="background-color: #FF9900"Q?
submit2按钮的背景是一个图像,代码Q?br>Qinput type="submit" name="Submit22" value="Submit2" style="background-image: url(back.gif)"Q?
结Q?/strong>用好background-color属性和background-image属性,可以设计很?#8220;?#8221;表单?jin)?/span>1.3 Ҏ(gu)样式的应?/strong> 也许你觉得表单的Ҏ(gu)q于LQ我们能否设计单U条Q或者其它的Ҏ(gu)样式呢?当然可以Q?br> 和边框有关的属性有Q边框式样border-style、上Ҏ(gu)border-top、右Ҏ(gu)border-right、下Ҏ(gu)border-bottom、左Ҏ(gu)border-left、边框颜色border-colr、边框宽?border-width、上Ҏ(gu)宽度border-top-width、右Ҏ(gu)宽度border-right-width、下Ҏ(gu)宽度border-bottom-width、左Ҏ(gu)宽度border-left-width、边?borderQ这里不作详l的讲述Q请参考有兌料?br> 样例14Q?/strong> 8U边框Ş式的展示
复? 单?
分析Q?/strong>
文本框有8U类型边框样式,即border-styleQ分别展C在本例中, Ҏ(gu)宽度的设|有一个规律:(x) border-width: [ thin | medium | thick | Q长度> ]{1,4} Ҏ(gu)宽度用一到四个值来讄元素的边框宽度,它们分别被应用于上、右、下和左Ҏ(gu)宽度。如果只l出一个|它被应用于所有边框宽度。如果两个或三个值给Z(jin)Q省略了(jin)的g对边相等 例如Q<input type="text" name="RedF" style="border-color: #006600; border-style: dotted; border-width: 1px"Q?br>Ҏ(gu)颜色的设|有一个规律:(x) border-colr: Q颜Ԍ{1,4} Ҏ(gu)颜色用一到四个值来讄元素的边框颜艌Ӏ如果四个值都l出?jin),它们分别被应用于上、右、下和左Ҏ(gu)颜色。如果只l出一个|它被应用于所有边框颜艌Ӏ如果两个或三个值给Z(jin)Q省略了(jin)的g对边相等?
对于多行文本框以?qing)按钮,讄?gu)的方法和文本框一P不再陈述Q?
׃下拉选择框Select不支持边框的讄Q所以对它设|是徒劳的;
单选按钮和复选按钮的Ҏ(gu)Q设|的效果不十分协调,所以徏议不要对它们讄Q不然有“画蛇添”之感Q?
样例15Q?/strong>Ҏ(gu)的特D设计展C?br> 聪明的读者一定会(x)惛_Q如果设计单Ҏ(gu)Q一定更加漂亮,对!下面我们来尝试以下部分边框的讄效果Q本例仅仅以Solid和dotted两种cd的边框作演示Q其它类型的Ҏ(gu)原理相同Q?
代码Qstyle="background-color: #FFFFFF; border-color: #000099; border-style: solid; border-width: 0px 0px 1px" 代码Qstyle="background-color: #FFFFFF; border-color: #CCCCCC black #FF0000; border-style: solid; border-width: 1px 0px" 代码Qstyle="background-color: #FFFFFF;border-left: 1px dotted #ff0000; border-right: 1px dotted #ff0000; border-top: 1px dotted #ff0000; border-bottom:1px solid #000000"
注意Q?/strong>Ҏ(gu)cd的外观如下:(x)
none Q无Ҏ(gu)。与M指定的border-width值无养I
dotted Q点U;
dashed Q虚U;
solid Q实U边框;
double Q双U边框。两条单U与光隔的和等于指定的border-width|
groove Q?DҎ(gu)Q?
ridge Q边框突P
inset Q?D凹边Q?
outset Q?D凸边Q?
2、图像魔?br> 囑փQ是|页的重要元素,能否应用到表单中呢?接下来,我们用图像来攚w死板的表单Q分两个部分来探讨:(x)用图像代替按钮、用背景囄化表单元素?br> 2.1 用图像代替按?/strong> ׃默认的表单按钮太丑陋Q绝大多数的|站采用?jin)图像按钮,那么Q我们通过两个实例来看看怎样实现的:(x) 样例16 Q用囑փ代替提交按钮Q?br> 当只有一个提交按钮的时候,可以单地实现Q不用加事g函数Q代码是Q?br>Qinput type="image" name="..." src="url" width="" height="..." border="..."Q?br> 除了(jin)标签改ؓ(f)input type="image" 以外Q其它的属性和QimgQ标{属性是一L(fng)Q例如:(x)
是不是只要用囄可以代替所有的按钮呢?是的Q不q,不是上面q么单了(jin)Q必d上事件函敎ͼ不然的话Q图片都是提交按钮,不能完成复位{功能,看看下面的例子就知道?jin)?x) 样例17 Q用囄代替所有的表单按钮Q?
注意Q?/strong>
代替submit按钮的图片代码格式是Qinput type="image" name="..." src="..." onClick="document.formName.submit()"Q?/font>
代替reset按钮的代码图片格式是<a href="javascript:document.formName.reset();">Qimg border=0 src="..."Q?lt;/a> 注:(x)q里的formName是表单的name属性倹{?
2.2 用背景图化表单元素 其实Q前面已l提到过Q用background-image:url()属性来定义表单元素的背景图Q这里仅举一例,可以看到Q除?jin)select没有效果以外Q其它的都可以配合网늚背景来设|它们?br> 样例18 Q背景图的设|?
www.yesky.com
redidea.com
www.chinabyte.com
------------------------------------------------------------
三、表单的提交 既然表单是用来采集用戯入的数据Q那么,应该保证用L(fng)数据被准地提交到预定的地点Q也是_(d)我们在表单提交的时候,应该对用L(fng)数据q行(g)验,一来可以避免用戯输数据,二来可以避免用户输入非法的,或者说不合格的数据Q检验合g后,q要保证用户的数据提交到特定的程序?br> 1Q数据的(g)?br> 数据的检验,通常有两U程序:(x)客户端检验和服务器端(g)验。客L(fng)(g)验,比较快,服务器端(g)验,相对来说比较慢,Z(jin)保安全Q通常同时采用Q这样就可以避免用户L破坏?br> 不管采用什么方式,数据?hu)(g)验的原理都是一L(fng)Q一旦用戯入的数据不符合规定,报错,要求用户重新输入Q客L(fng)(g)验常使用Javascrip脚本Q服务器端的视系l而定Q本文不Ҏ(gu)据检验的具体E序设计q行探讨Q仅仅列丑և个例子来说明?br> 样例19 Q必填项Q以?qing)简单的数据cd(g)?
以下?的必输入:(x) 姓名Q? * EmailQ? *
分析Q?
本例l表单添加了(jin)onSubmit事gQ通过onSubmit="return CheckDate()"指定提交前,必须通过函数CheckDate()来检验,如果不合|q回输入数据Q?
数据?hu)(g)验的函数如下Q?br>QscriptQ?br>function CheckDate(){ //取得输入的数?br>userName = document.RedForm.userName.value; userEmail = document.RedForm.userEmail.value; //如果没有输入姓名 if (userName=="") { alert("误入姓?); document.RedForm.userName.focus(); return false; }else{ //如果没有输入EmailQ或者Email地址错误(不含@) if ((userEmail=="")||(userEmail.indexOf("@")==-1)) { alert("请重新输入Email地址"); document.RedForm.userEmail.focus(); return false; }else return true; } } Q?scriptQ?
2Q表单的分支提交 有的时候,表单需要根据用L(fng)选择Q提交到不同的程序,怎么做呢Q?br> 通过脚本来检用L(fng)选择分支Q从而向不同的程序提交表单,看看样例Q?br> 样例20Q?/strong>分支提交
用户名:(x) 密码Q? 公司用户 个h用户
分析Q?/strong>q里首先用到的是form的onSubmit="TwoSubmit(this)" 然后Ҏ(gu)选择的分支,来分别递交C同的E序QTwoSubmit()函数如下Q?br> QscriptQ?br>function TwoSubmit(form){ if (form.Ref[0].checked){ form.action = "cop.asp";//q里是分之一 }else{ form.action = "ind.asp";//q里是分之二 } form.submit(); } Q?scriptQ? 3Q用M元素提交表单 是不是只有按钮或者图片按钮才能提交表单呢Q当然不是,实际上,M面元素都可以提交表单,不过嘛,都是通过脚本来完成的Q下面我们就使用链接来代替Submit按钮Q?br> 样例21 Q用链接来提交表?
用户名:(x) 密码Q? d 清空
分析Q?/strong> 通过onClick="document.form.submit()"来提交表单;用onClick="document.form.reset()"来复位表单,q样一来,M一个元素都可以实现提交表单?jin)?/span>
------------------------------------------------------------------
四、表单的常用技?br> q些常用技巧,往往是和事g以及(qing)脚本联系在一P本文注重功能Q至于脚本,׃一一详细分析。常见的技巧有Q下拉蟩转菜单,表单内容的聚焦?br> 1Q下拉蟩转菜?/strong> 在Dreamweaver中,可以很方便地建立Z表单的下拉菜单,Z(jin)兼顾非Dreamweaver用户Q这里讲qC下这U技巧?br> 样例22 Q基于表单的下拉跌{菜单
Chinabyte
Sina
netease
分析Q?/strong>实际上,q里用到?jin)一个函敎ͼ用于向选择的地址跌{Q?br> Qscript language="JavaScript"Q?br>function FormMenu(targ,selObj,restore){ eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0; } Q?scriptQ? 然后Q给下拉选择框赋予一个事件onChange="FormMenu('parent',this,0)"Q就可以?jin)?br> 2Q表单内容的聚焦 内容聚焦Q常用在Copy&Pastecȝ站上Q用的好的话Q可以方便用戗?br> 样例23 Q内容自动聚?
把你的鼠标移上来Q看?
q里的内容自动选择?
分析 Q?上面分别使用?jin)两个事ӞEmail的是onFocus="this.value=''"Q自动选择的是onMouseOver="this.select()" 3Q去掉表格和表单间的I隙 样例24 Q表格和表单的空隙处?br> 表格Q我们常用来构架面Q可是,表格里的表单L和表格的内容有一个空隙,对照一下:(x)
分析Q?/strong>Z么右Ҏ(gu)有空隙呢Q看看右边的代码q道了(jin)?br> Qtable width="100%" border="1" cellspacing="1" cellpadding="1"Q?br>QtrQ?br>Qform name="form3" method="post" action=""Q? QtdQ?Qinput type="text" name="textfield2"Q<brQ?br>Qinput type="submit" name="Submit22" value="Submit"Q?br>q里没有I隙 Q?tdQ?br>Q?formQ?br>Q?trQ?br>Q?tableQ? 也就是说Q把QformQ标{放刎ͼtrQ和QtdQ中_(d)对应的</formQ放在</tdQ和Q?trQ中_(d) 4Q用Email提交表单 (只适合Outlook用户Q不适合F(tun)oxmail用户) 样例25Q?/strong>Email提交表单
分析Q?/strong>看看我们的表单<formQ标{ְ知道?jin),格式如下Q?br>Qform name="..." action="mailto:xxxxx@xxx.xxx?Subject=表单反馈" enctype="text/plain" method="post"Q?..Q?formQ? q里的mailto:后面加上要接受信息的地址Q?Subject是设|默认的Email标题Qenctype="text/plain"是必要的Q表CZ息以文本方式提交Q没有Q何加密,所以这U方法常用于没有Asp/Php/cgi支持的空_(d)也只是一个代用的Ҏ(gu)Q用户必d装OutlookQƈ且是默认的邮件程序,才能利执行提交Q据说TheBat!也可以,大家可以试验一下?/span>
]]>
վ֩ģ壺
ƷƵ |
Ʒtvþþþ |
ƵƵ
|
һ߹ۿ
|
ʮ˽Ƶ߹ۿڵ
|
Ʒַ |
ձXXXѿ |
g0g0ȫѸƵ |
www.ɫͼ.com |
߹ۿѰƵ |
AVһַ |
պ |
߹ۿվ |
˿Ƶ |
ߵƵ߹ۿ |
լa |
AVһAV |
ۺһҳ |
߿Ƶվ |
91ѸƵ |
һػaѴƬ |
ţƷavƬ |
ҹƷ |
av߲ |
һƵѹۿ |
ɫվav |
ԻƵ40Կ |
Ʒձ777 |
JIZZJIZZŮ |
鵺̳߹ۿ
|
ҸŮˬ߳Ƭ |
Ʒ˾þþ |
A뾫ƷAA |
ձػɫѴƬ |
һѰ |
aaƵ |
ٸ17p |
͵ۺ |
avרavý |
ëƬaëƬѲ |
˵ĺѹۿƵ |