主页  范文大全   设计学院   SEO研究   免费资源   网赚大全  QQ资源区    电影下载  在线电影   短信&笑话   校内网   理财知识   站长Blog   访客留言   顶级QQ百科

         声明:本站所有资料素材均是由站长精心整理搜集的,属于原创。我们同意您的转载和复制,但是在转载复制时请保留文字出处。本站资料全部免费使用,无需注册,力求打造华北最强最大的免费资源网站。

  在使用ASP制作一个站点的时候,常常会出现一个ASP文件中程序代码和HTML代码混合情况这样子做有许多缺点:

  1.编程时就要对页面布局进行设计和编排,造成代码混乱难懂不规范;

  2.当需要改变页面外观时,你不仅要改变HTML部份,也需要改变ASP代码不易维护

  那么要如何才能避免这些麻烦呢?

  答案就是使用模板文件,将ASP代码和HTML页面分开一切问题就都解决了使用模板有以下好处:

  1.在很短的时间内可以替换整个站点外观;

  2.使程序员可以抽象编程而无须接触HTML代码;

  3.可以重复利用以前模板

  使用过PHP的程序就会知道,PHP有个模板程序(FastTemplate)现在的问题是如何在ASP中实现类似功能

  MicrosoftASP带有两种脚本:VBScript和JScript它们都带有一个正则表达式对象(RegExp),利用字符串对象和RegExp对象就可以轻松实现模板功能沐枫以此编写了一个Template.JScript.INC文件此文件内容附在文章后面有能力的读者可以根据自己需要进行改进

  下面介绍一下使用方法由于此文件是使用JScript编写(当然要转成VBScript也很容易),因此,缺省脚本语言要设为JScript,即ASP程序第一行应为:%@Language=JScript%然后再包含模板程序文件:!#includefile=Template.JScript.INC

  先介绍一下Template类使用:

  1.建立Template对象:Template(Path)

  参数:Path(字符串类型)HTML模板文件存放路径

  使用new操作符建立Template对象

  例子:

以下是引用片段:
  vartpl=newTemplate(c:\template);

  在程序中可以用tpl.TplPath来取得模板路径也可以通过tpl.TplPath来改变模板路径

  如:

以下是引用片段:
  tpl.TplPath=d:\template;

  2.装载模板文件:Template.Load(Name,File)

  参数:Name(字符串类型)是一个模板变量名

  File(字符串类型)模板文件名此文件存放在HTML模板路径下

  读取文件File到模板变量Name中

  例子:

以下是引用片段:
  tpl.Load(Main,TEST.HTM);

  此时模板变量Main就包含了文件TEST.HTM内容

  你可以用tpl.Main来访问模板变量Main

  例子:

以下是引用片段:
  %=tpl.Main%

  将显示刚才读进来TEST.HTM文件内容

  3.模板分拆:Template.Split(Name)

  参数:Name(字符串类型)是一个模板变量名

  将Name中子模板分解

  例子:

以下是引用片段:
  先假设上例中TEST.HTM内容为:
  -
  这是主模板接下来是:!#TPLDEFSUBSUB子模板还有
  !#TPLDEFTHIRDTHIRD模板!#TPLENDTHIRD
  !#TPLENDSUB
  -

  那么:

以下是引用片段:
  tpl.Split(Main);

  执行以后,就会生成新的模板变量SUB,和THIRD它们内容就是!#TPLDEFSUB和!#TPLENDSUB之间语句

  而且Main模板变量内容也会发生改变:

  tpl.Main内容为:这是主模板接下来是{SUB}

  tpl.SUB内容为:SUB子模板还有{THIRD}

  tpl.THIRD内容为:THIRD模板

  TPLDEF和TPLEND定义语句块充许多重嵌套

  4.模板处理:Template.Parse(Name)

  参数:Name(字符串类型)是一个模板变量

  将模板中用花括号括起来的字串用同名的模板变量内容替换

  例子:续上例

以下是引用片段:
  %=tpl.Parse(Main)%

  显示:这是主模板接下来是SUB子模板还有{THIRD}

  由例子可知Parse只替换Main模板中{SUB}变量而不能嵌套替换下去这是为了增加程序灵活性而故意设计那么该怎么样完整显示Main模板呢?

  例子:

以下是引用片段:
  tpl.SUB=tpl.Parse(SUB);//先处理SUB变量再处理Main变量
  Response.write(tpl.Parse(Main));

  5.自定义模板变量

  自定义模板变量很简单可以直接用赋值语句来定义和修改任何变量:

  例子:

以下是引用片段:
  tpl.Hahaha=这是自定义变量;
  tpl.THIRD=改变原模板中THIRD变量;

  需要注意的是,由于JScrip是区分大小写的因此一定要注意大小写拼写一般来说HTML模板中定义模板变量都用大写

  另外,模板中使用的TplPath,Load,ParseSplit变量是内部使用,不要挪做它用否则程序将可能发生异常

教程录入:xxYsh.com    责任编辑:admin 
发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口

推荐链接