有没有办法在 WSS 3.0 中动态更改与 ECB 菜单关联的超链接?例如,我有一个包含 2 个字段的列表。一个字段是隐藏的并且是一个链接,另一个是具有 ECB 菜单的标题字段。标题字段当前链接到项目的查看页面 - 但我们希望它链接到链接字段的 url。那可能吗?
更新 - 2009 年 5 月 29 日上午 9 点到目前为止我有这个。请参阅此TechNet 帖子。
<script type="text/javascript">
var url = 'GoTo.aspx?ListTitle='+ctx.ListTitle;
url += '&ListName='+ctx.listName;
url += '&ListTemplate='+ctx.listTemplate;
url += '&listBaseType='+ctx.listBaseType;
url += '&view='+ctx.view;
url += '&';
var a = document.getElementsByTagName('a');
for(i=0;i<=a.length -1;i++)
{
a[i].href=a[i].href.replace('DispForm.aspx?',url);
}
</script>
这给了我一个这样的链接(格式化以便更容易看到):
GoTo.aspx
?ListTitle=MyList
&ListName={082BB11C-1941-4906-AAE9-5F2EBFBF052B}
&ListTemplate=100
&listBaseType=0
&view={9ABE2B07-2B47-4390-9969-258F00E0812C}
&ID=1
我现在的问题是网格中的行为每个项目提供了上面的 ID 属性,但是如果我更改视图或进行任何过滤,您可以看到 ID 实际上只是行号。我可以在这里获取实际项目的 GUID 吗?
如果我可以获取项目的 ID,我可以将其与列表 ID 一起发送到应用程序页面,该页面将从列表中的字段获取正确的 URL 并将用户转发到正确的站点。