第三十章 使用 CSP 进行基于标签的开发 - 控制流

第三十章 使用 CSP 进行基于标签的开发 - 控制流

控制流

CSP标记语言提供了几个标记来促进对页面执行的控制。
虽然不像直接的服务器端标记那样通用,但这些标记可以使某些任务容易完成。

csp:if Tag

<csp:if>标记,以及<csp:else><csp:elseif>标记,提供了一种在csp页面中定义条件输出的方法。

<csp:if>标记具有单个属性、条件,其值是由csp服务器在运行时计算的ObjectScriptBasic表达式(取决于为页面指定的默认语言)。
如果该值为true,则执行标记的内容。

<csp:if condition='user="Jack"'>
Welcome Jack!
<csp:elseif condition='user="Jill"'>
Welcome Jill!
<csp:else>
Welcome!
</csp:if>

csp:while Tag

<csp:while>标记提供了一种方法,只要给定的服务器端条件为真,就可以重复处理csp文档的某一部分。

<csp:while>标记的条件属性包含一个ObjectScriptBasic表达式(取决于页面的默认语言),该表达式在提供页面时在csp服务器上计算。
只要条件的计算结果为true(1),就计算csp:while标记的内容。

<csp:while>标记通常与对象中的Caché %ResultSet一起使用,以HTML显示SQL查询的结果。
在下面的示例中,<csp:while>标记的内容(它写出查询的Name列的值)被重复执行,直到对象的Next方法中的%ResultSet返回值FALSE(0),这表示结果集的结束。

<script language=SQL name=query>
SELECT Name
FROM MyApp.Employee
ORDER BY Name
</script>

<csp:while condition="query.Next()">
#(..EscapeHTML(query.Get("Name")))#<BR>
</csp:while>

使用<csp:while>标记的计数器属性,可以定义一个计数器变量,该变量初始化为0(0),并在每次迭代开始时自动增加1(1)。

例如,这里有一种使用<csp:while>标记创建5行HTML表的方法:

<table>
<csp:while counter="row" condition="row<5">
<tr><td>This is row #(row)#.</td></tr>
</csp:while>
</table>

下面是一个在条件中使用not操作符(单引号)的例子。
注意,该条件不能包含任何空格,也不包括开始和结束引号。
也可以使用括号(mystr'= " QUIT ")来声明条件。

<csp:while condition=mystr'="QUIT">
//add code
</csp:while>

csp:loop Tag:编号列表示例

<csp:loop>标记提供了重复执行csp文档中的内容的另一种方法。

<csp:loop>标记允许定义一个计数器变量(使用它的counter属性)以及它的起始值、结束值和递增值。
默认的增量值为1

例如,可以使用<csp:loop>标签创建一个包含5项的列表:

<ul>
<csp:loop counter="x" FROM="1" TO="5">
<li>Item #(x)#
</csp:loop>
</ul>

posted @   M技术分享  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示