|  | 设为首页 加入收藏 联系我们 |

|  | 首 页 行业资讯 网站运营 网络编程 数 据 库 网页设计 网络安全 网站推广 平面设计 服 务 器 商城 |

| 站内搜索： 热门Tag： 淘特 CMS 门户 信息港 房产 汽车 旅游 分类信息 下载 JspCms 内容管理系统 更多>> |

现在位置：首页> 网络编程

编辑推荐
?开发安全的ASP.NET应用程序

热门点击
·ASP.NET 中如何防范SQL注入式攻..
·ASP.NET 2.0 服务器控件之复合..
·开发安全的ASP.NET应用程序
·ASP.NET 2.0的URL映射的实现..
·ASP.NET应用中缓存Oracle数据
·关于Asp代码与页面的分离
·ASP.NET 2.0功能扩展:跨页提交
·ASP.NET网络编程中常用到的27个函..
·ASP.NET如何在窗体和窗体之间传送数..
·Asp.net中防止用户多次登录的方法

图片推荐
·

关于Asp代码与页面的分离
作者： 日期：2013-08-13 出处： 点击:

在使用ASP制作一个站点的时候，常常会出现一个ASP文件中，程序代码和HTML代码混合的情况。这样子做有许多缺点： 1.编程时就要对页面布局进行设计和编排，造成代码混乱难懂，不规范; 2.当需要改变页面外观时，你不仅要改变HTML部份，也需要改变ASP代码，不易维护。 那么，要如何才能避免这些麻烦呢? 答案就是使用模板文件，将ASP代码和HTML页面分开，一切问题就都解决了。使用模板有以下好处： 1.在很短的时间内可以替换整个站点的外观; 2.使程序员可以抽象编程，而无须接触HTML代码; 3.可以重复利用以前的模板。 使用过PHP的程序就会知道，PHP有个模板程序(FastTemplate)，现在的问题是如何在ASP中实现类似的功能。 Microsoft的ASP带有两种脚本：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));
上一篇：ASP.NET应用中缓存Oracle数据 下一篇：ASP.NET 2.0功能扩展:跨页提交

[1]

- 返回首页
- 打印本文
- 加入收藏
- 返回顶部
- 关闭窗口

相关文章 | 查看留言 发表评论
用 户： |
内 容： |
验证码： |

关于本站　|　免责声明　|　联系我们　|　版权隐私　|　友情链接　|网站地图 | SiteMap
联系电话：0531-88511191 | 客服QQ：6410861 | Email：totcms@163.com | ICP备：88888号 Copyright © TotCms.com All Rights Reserved. 济南淘网科技 版权所有