第五十七章 CSP的常见问题 - 如何调试CSP页面?
第五十七章 CSP的常见问题 - 如何调试CSP页面?
如何调试CSP页面?
不要用Debug > View Breakpoints来设置断点,因为这似乎容易出错。
- 要调试
CSP页面,必须检查选项工具>选项>编译器>保留生成的源代码。 - 打开工作区窗口,将
CSP页面添加到CSP文件夹中(如果它们还不在那里)。 - 编译
CSP,然后单击工具栏中的“查看其他代码”图标(或选择“查看”>“查看其他代码”)。这使可以看到.cls和.int文件。例如,文件A.CSP生成CSP。CSP.1.INT和CLS。 - 在
.cls或者.int文件中,右键单击需要断点的代码行,然后选择“调试”>“断点”>“切换断点”(或者选择该行并按F9)。 - 选择调试>调试目标>
ZEN或CSP页面。从下拉列表中,选择调试器将在其上运行的目标CSP页面,然后单击确定。(如果将CSP拖到工作区窗口,它们会出现在下拉列表中。) - 单击调试工具栏上的开始。
比如你有一个操作流程:A-> B;也就是说,显示页面A,然后通过链接访问页面B。如果页面B中有一个bug,应该执行以下操作:
- 检查
A.CSP和B.CSP是否在工作区窗口中。 - 两者都编译。
- 选择视图>工具栏>调试以打开调试工具栏。
- 选择调试>调试目标>
ZEN或CSP页面。从下拉列表中,选择一个.CSP,然后单击确定。 - 打开
B.CSP并选择查看>查看其他代码以打开csp.B.CLS。 - 在
csp中。B.CLS,右键单击OnPageBODY()方法中的第一行,然后选择调试>断点>切换断点。 - 单击调试工具栏上的开始。
- 将显示页面
A。 - 单击链接打开页面
b。 - 调试器在
B中的断点处停止
为什么下面的代码不能编译?
<script language="Cache" runat="server">
write "<script language=javascript>", !
write "int x = 10; alert(x);", !
write "</script>"
</script>
在脚本标记中使用runat="server "编译CSP页面时,编译器运行ObjectScript并将其转换为HTML以在页面上显示。但是,在遇到< script language = " cache " runat = " server " >标记后,它会查找</script> end标记来表示ObjectScript代码的结束,在本例中,它会在write语句中找到该标记。要编译它,请将</script >标记分成两个write语句:
<script language="Cache" runat="server">
write "<script language=javascript>", !
write "int x = 10; alert(x);", !
write "</script",">", !
</script>
当我使用&js<alert("Error!");>要显示警告框,文本alert("Error!")而不是警告框。为什么?
可以将这一行放在runat="server "代码段或从runat="server "块调用的方法中。要在页面加载时执行JavaScript,添加<script language="javascript ">标记,如前一个答案所示。
代码&js<alert("Error!")>在服务器端方法内部工作,该方法通过加载页面中的JavaScript事件调用。
如何在警报消息中包含ObjectScript变量?
使用#()#语法。从ObjectScript方法内部,尝试如下操作:
s error = "Bad password"
&js<alert(#(..QuoteJS(error))#);>
%CSP.Page类提供的QuoteJS方法返回正确引用的JavaScript字符串。它还正确地转义返回结果中包含的任何引号。

浙公网安备 33010602011771号