我有一个有两个中继器的Web部件区域。每个转发器使用相同的路径'/进程/%'。如果'/ Processes /%'中不存在子页面,隐藏整个Web部件区域的最佳方法是什么?
我要检查的网页并不直接位于页面下方,而是位于子页面下。如何在特定路径下检查孙子页面? '/ Processes /%'?
答案 0 :(得分:2)
您可以使用Documents
宏来访问正确的文档,并检查它是否有子文件。
如果Processes
页面的别名路径为/Processes
,并且您想要检查它是否包含子页面(/Processes/%
):
{% Documents["/Processes"].NodeHasChildren %}
如果别名路径为/MyPage/Processes
(且子项位于/MyPage/Processes/%
下):
{% Documents["/MyPage/Processes"].NodeHasChildren %}
然后,您可以将其用作"可见"上的宏。您的WebPart区域的属性。
答案 1 :(得分:1)
在Web部件区域可见性属性中输入宏:
{%CurrentDocument.NodeHasChildren%}
答案 2 :(得分:1)
Repeater有Hide,如果没有找到记录的属性会自动隐藏它,但是如果你真的需要寻找chrandchildren,你必须遍历循环中的所有子页面:
{%
result = false;
foreach (p IN CurrentDocument.Children) {
if (p.NodeHasChildren) {
return true;
}
}
return result;
%}