Xpages链接打开新浏览器选项卡
我在stackoverflow中发现了一些类似的问题,但没有完全匹配的。我正在尝试修改一个Xpages链接打开新浏览器选项卡,xpages,Xpages,我在stackoverflow中发现了一些类似的问题,但没有完全匹配的。我正在尝试修改一个Xpages项目,其中搜索结果显示在动态视图面板中。搜索结果的第一列是在同一页面中打开记录的链接。我想做的是让这个链接在一个单独的页面中打开记录。我认为视图中的“动态”部分令人困惑,因为在window.open或target=“\u blank”中没有要添加的“列视图”。请问我该怎么办 XPage的相关部分仅包含以下内容: <xp:panel id="maincontentpanel">
Xpages
项目,其中搜索结果显示在动态视图面板中。搜索结果的第一列是在同一页面中打开记录的链接。我想做的是让这个链接在一个单独的页面中打开记录。我认为视图中的“动态”
部分令人困惑,因为在window.open或target=“\u blank”
中没有要添加的“列视图”
。请问我该怎么办
XPage的相关部分仅包含以下内容:
<xp:panel id="maincontentpanel">
<xe:dynamicViewPanel rows="30" id="dynamicViewPanel1" width="100%">
<xe:this.data>
<xp:dominoView viewName="(keywordsUser)" var="view">
</xp:dominoView>
</xe:this.data>
</xe:dynamicViewPanel>
</xp:panel>
<tr>
<td class="xspColumnViewStart">
<a id="view:_id1:cc4cconeuilayout:OneUIMainAreaCallback:dynamicViewPanel1:0:_id6:_internalColumnLink"
href="*routetoourrecord*";action=editDocument"
class="xspLinkViewColumn">2014</a>
</td>
在HTML中查看源代码时,可单击列显示以下内容:
<xp:panel id="maincontentpanel">
<xe:dynamicViewPanel rows="30" id="dynamicViewPanel1" width="100%">
<xe:this.data>
<xp:dominoView viewName="(keywordsUser)" var="view">
</xp:dominoView>
</xe:this.data>
</xe:dynamicViewPanel>
</xp:panel>
<tr>
<td class="xspColumnViewStart">
<a id="view:_id1:cc4cconeuilayout:OneUIMainAreaCallback:dynamicViewPanel1:0:_id6:_internalColumnLink"
href="*routetoourrecord*";action=editDocument"
class="xspLinkViewColumn">2014</a>
</td>
动态视图面板在所有属性中都有一个属性“target”,您可以在其中选择“\u blank”。这应该将属性
target=“\u blank”
添加到第一列中的链接。但不幸的是,这只适用于Notes客户端
所以,没有我们可以设置的属性。幸运的是,呈现的链接有自己的类“xspLinkViewColumn”(参见源HTML示例)。使用dojo.query
我们可以获得这个类的所有元素,并在客户端添加target属性
只需将以下事件代码添加到XPage:
所有链接都将以这种方式获得属性
target=“\u blank”
,文档将在新的浏览器选项卡中打开。只是为了让您知道,代码不能与引导主题一起使用
相反,你可以使用
dojo.query('[id$="_internalColumnLink"]').attr("target", "_blank");
原谅我,因为我对XPages还很陌生。您提到的“查看列链接”是动态视图面板的属性吗?如果是这样,我就看不见了!我更新了我的答案,希望能更好地理解。您只需将上面的代码添加到Xpage或自定义控件中,就可以了。再次感谢Knut。我将您提供的代码添加到XPage中,但它仍然无法在新的浏览器选项卡\窗口中打开记录。我尝试在dynamicviewpanel的XML标记中添加代码,然后执行构建和清理,但没有区别。然后将代码移到dynamicviewpanel之外的Xpage顶部附近,再次构建和清理,但仍然相同。然后我尝试删除代码,并在XPage的属性中,在“onClientLoad”事件中添加了以下内容:dojo.query(“.xspLinkViewColumn”).attr(“target”,“u blank”);但还是不起作用。我做错了什么?您最后两种包含代码的方法是正确的,应该可以工作。请测试添加此警报时代码是否执行:
警报(dojo.query(“.xspLinkViewColumn”).length)代码>等待!!!它正在工作。我做了另一次清理,但这确保了它包括清理项目的磁盘广告部分(因此它与SVN一起工作),我还清除了浏览器缓存及其工作状态。非常感谢你,克努特。你帮了大忙