ASP网站制作之用ASP创立多栏选项列表
优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件创立观点作者:青苹果事情室本文点击次数:4755
原文出处:http://www.asptoday.com/articles/20000221.htm
起首,我们必要侧重先容一些观点,以给你供应一些使这个“事业”得以产生的构成部分。太容易地保守伏笔关于讲故事来讲不是个好的情势,以是那些不肯意在一入手下手就看到就了局的人就应当在这里先走开一下。
这个综合体的第一部分是定宽字体的利用。InternetExplorer和Netscape的两种尺度定宽字体分离是CourierNew和LucidaConsole。年夜部分的网页计划都不是完整利用尺度字体,但它们是这个特定手艺事情的需要前提,正象下面两个画面所显现的,它们看起来不错。
进一步注释,定宽字体就是一种字体,对这类字体的一切字符来讲每一个字符所占有的空间都是不异的。以是你大概想要接纳必定的步骤以确保,这些定宽字体中的某一个或另外一个已安装在构成你的方针不雅众的客户机上。假如要用你的扫瞄器看看今朝这些字体是不是已安装,在IE5中到Tools|InternetOptions下,在InternetOptions窗口的General标签上点击Fonts按钮。你就会看到一个名为PlainTextFont的区:
这就是以后安装的全体定宽字体的列表。关于Netscape4和更高版本,到Edit|Preferences,在tree-view中睁开Appearance并选择Fonts。在那有一个FixedWidthFonts的下拉列表。
第二部分是将某个特定的字体请求到选项列表中的才能。在IE4及以上版本中,能够用以下体例请求一个字体:
<SELECTname="mySelect"style=FONT-FAMILY:LucidaConsole,CourierNew;>
对Netscape,你能够环绕选项列表利用Font标志:
<FONTFACE="LucidaConsole,CourierNew"></FONT>
第三部分就是无中断空间&nbsp和管道字符的利用。
鄙人一部分我将演示一个复杂的完整编码的多选项列表的例子。最初一部分将演示在高低文利用数据库挪用的多选项列表函数,并将探究一些大概的参数选择。
基础的多栏选项列表
作者:青苹果事情室本文点击次数:4755
以下的HTML例子树模多栏选项列表的最基础情势:
<HTML>
<HEAD>
<TITLE>SimpleMulti-ColumnSelectList</TITLE>
</HEAD>
<BODY>
<FORM>
<FONTFACE="LucidaConsole,CourierNew">
<SELECTname="sel1"size=3style="HEIGHT:65px;WIDTH:350px;
FONT-FAMILY:LucidaConsole,CourierNew;FONT-SIZE:x-small;">
<OPTIONVALUE="1">
John|Chips|
Intel|Hillsboro
<OPTIONVALUE="2">
Sue|Wotz|
Microsoft|Redmond
<OPTIONVALUE="3">
Nathan|Babb|
Eprise|Framingham
</SELECT>
</FONT>
</FORM>
</BODY>
</HTML>
列表选项包括FirstName、LastName、Company和City。为了准确地布置第一栏的格局,我们必需发明字节数最多的名字Nathan,然后为全体7个字符增添一个无中断空间。然后我们给John和Sue增添得当数目的空格,使它成为7个字符,在开头增添管道标记,如今我们就有了一个格局化了的栏。
要注重我们在以上代码中增添了<FONT>标志。这是为了在Netscape上利用思索,由于Netscape不象IE可以辨认字体属性。还要注重<FORM>标志的呈现。这也是Netscape的请求。IE同意你绘制表单域、选项列表等,不必将它们放在<FORM>标志中,而在Netscape,假如想要提取表单把持的话,就请求表单的标志。
利用这类办法有分明的缺点。好比说,不简单向列表中增添一个纪录,特别是当它的巨细与编码断定的空间不合适的时分。别的,这类范例的列表难以保护,特别是当你不是创立编码的谁人人的时分。鄙人一部分我将向你演示怎样用代码静态创立一个多栏选项列表。
扩大的多栏选项列表(一)
作者:青苹果事情室本文点击次数:4755
我所实行的多栏选项列表是一个叫做aspOptionListMulti()的函数。假如你想跳过注释间接进进代码部分,能够在文章开头处找到供下载的函数。下载的函数包括以下几个文件:
simpleSelect.htm
multicolumnlist.mdb
example.asp
connect.inc
aspFunction.asp
simpleSelect.htm是后面第一个例子的代码。我的静态例子利用的数据库是Access,其数据源是multicolumnlist.mdb。经由过程运转example.asp剧本就能够看到这个静态例籽实际实行情形。这个文件中包括connect.inc以创建与数据库的毗连,aspFunction.asp举行对aspOptionListMulti()的函数挪用。
以下表中所列的,我的多栏列表函数有10个参数。我不想在aspOptionListMulti()的数据恢复方面多花工夫。在接上去的会商中,假定存在某品种型的数据源,你将在函数中处置前往的行。在这个例子中,我假定我所存储的程序没有参数。我也不再深切注释这个函数是怎样挪用的。假如你想晓得函数是怎样被挪用的,能够鄙人载处参考例子。
proc-天生存储的程序名
parmname-用于sp挪用的可选参数名(可传送单个值或数组)
parmval-用于sp挪用的可选参数值(可传送单个值或数组)
val-选项列表的值栏
selval-假如是空字符串就不选择。假如它在选项列表中,就作为所选择的值被传送。
column-在选项列表中代表栏的一个数组。
maxcollen-一个栏的最年夜大概长度。-1就封闭。能够是单个值,关于多栏就是数组。
name-选项列表的名字。
firstopt-断定第一个选项是不是为空。假如是"|*"那末就无选项。假如传送了一个值,那末它就是第一个选项的值(保举利用0或1)。
style-字体必需是流动长度(CourierNew或LucidaConsole)。别的字体的参数选择也能够传送。
optattr-你大概想要包括在选项列表(如函数挪用、属性等)中的供选择的属性(完整援用)。
size-1是一般,2或更多是多选(行)。
以下代码是函数声明及它的别的参数。
FunctionaspOptionListMulti(proc,parmname,parmval,val,selval,column,maxcollen,name,firstopt,style,optattr,size)
OnErrorResumeNext
关于我们这个特定情形,你大概想要在函数的最开首包括一个OnErrorResumeNext语句。把这个语句放在代码中同意代码在产生毛病的情形下持续实行(大概在前往的纪录会合,代码在某一行中碰到了一个不测的值)。代码中有这个语句,你还能够创建选项列表的内容。弱点是在产生毛病的情形,你的使用程序用户将不克不及间接向你呈报毛病,大概这个毛病会招致下一个毛病,使你的调试事情加倍坚苦。
代码的下一个主要部分是扫瞄器范例的复杂测试。当我们最初创建选项列表时,我们必要辨别开IE和Netscape,由于二者在指定字体和型号时对选项列表的处置是分歧的。为了复杂起见,我将不深切到有关扫瞄器兼容性的代码,由于我还想会合在代码的关头观点上。假如你想晓得更多有关兼容性的成绩,你能够参考本文开头处供应的代码。
strUA=Request.ServerVariables("HTTP_USER_AGENT")
IfInstr(strUA,"MSIE")Then
browserType="IE"
EndIf
接上去是对数据库举行挪用,以恢复我们创立多栏列表时所想要利用的纪录集。变量rsSelect包括前往的设定了局。我是经由过程一个DCOM工具spServerObj来完成对数据库的挪用的,在数组中传送参数及其值。可是经由过程ASP用ADO举行挪用也一样复杂,在这个例子顶用一个复杂的选择语句来恢复纪录集。
SetrsSelect=spServerObj.ca</p>ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 Session:这个存储跟客户端会话过程的数据,默认20分钟失效 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。 ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。 不能只是将它停留在纸上谈兵的程度上。 跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
页:
[1]