Asp中代码与页面的分离(2) ------------------- 这是主模板。接下来是:<!--#TPLDEF SUB-->SUB子模板,还有 <!--#TPLDEF THIRD-->THIRD模板。<!--#TPLEND THIRD--> <!--#TPLEND SUB--> ------------------- 那么: tpl.Split("Main"); 执行以后,就会生成新的模板变量"SUB",和"THIRD",它们的内容就是<!--#TPLDEF SUB-->和<!--#TPLEND SUB-->之间语句。 而且"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","Parse","Split"变量是内部使用的,不要挪做它用,否则程序将可能发生异常。 下面举个完整的例子: 第一步:先建立Html模板文件。 这里先说明HTML模板文件的组成。首先,它和普通的HTML文件几乎没有区别,只不过多了几个标记。 模板的标记有两种。让我们先看一个例子: TEST.HTM ----------------- <!--文件名:TEST.HTM--> <HTML> <TITLE>范例</TITLE> <HEADER> </HEADER> <BODY> 这是一个表格范例。 <TABLE> <!--#TPLDEF MAXX-->10<!--#TPLEND MAXX--> <!--...注意,此处使用了一个技巧即定义了MAXX模板变量并赋值为10。--> <TR> <TD>X</TD><TD>X的平方</TD> </TR> <!--#TPLDEF ROW--> <TR> <TD>{X}</TD><TD>{XX}</TD> </TR> <!--#TPLEND ROW--> </TABLE> 以上共有{COUNT}行数据。 </BODY> </HTML>