我有以下viewPanel。当用户点击计算的网页网址时,我想打开一个新页面。我只是似乎没想到这一点。
<xp:viewPanel rows="30" id="viewPanel9" showColumnHeader="false" var="rowData"viewStyle="width:auto" disableTheme="true">
<xp:this.data>
<xp:dominoView var="view9" databaseName="product/picture.nsf"
viewName="pictures3" keysExactMatch="true"
keys="#{javascript:sessionScope.SelectedProduct;}">
</xp:dominoView>
</xp:this.data>
<xp:this.rendered><![CDATA[#{javascript:getComponent("viewPanel9").getRowCount() > 0}]]>
</xp:this.rendered>
<xp:viewColumn columnName="picDescr" id="viewColumn9" displayAs="link" openDocAsReadonly="true">
<xp:this.iconSrc><![CDATA[#{javascript:thisid = rowData.getColumnValue("unid");
thisdocument = rowData.getColumnValue("picName");
calculatedlink = "servername/product/picture.nsf/O/"+thisid+"/$FILE/"+thisdocument;
return calculatedlink}]]>
</xp:this.iconSrc>
<xp:this.pageUrl><![CDATA[#{javascript:thisid = rowData.getColumnValue("unid");
thisdocument = rowData.getColumnValue("picName");
picturename = thisdocument.replace("th_","");
calculatedlink = "servername/product/picture.nsf/O/"+thisid+"/$FILE/"+picturename;
return calculatedlink}]]></xp:this.pageUrl>
<xp:viewColumnHeader value="Description" id="viewColumnHeader9">
</xp:viewColumnHeader>
</xp:viewColumn>
</xp:viewPanel>
答案 0 :(得分:3)
有一段时间我正在努力解决同样的问题。我为它创建了一个可行的解决方法,但我不知道这是否是最好的方法。
首先将displayAs
的{{1}}属性设置为xp:viewColumn
。所以它看起来像这样:
hidden
现在在列中放置一个Link控件,您必须在Source选项卡中执行此操作。然后,您可以为链接控件将<xp:viewColumn columnName="picDescr" id="viewColumn9" displayAs="hidden" openDocAsReadonly="true">
属性设置为target
。所以你的代码看起来像这样:
_blank
答案 1 :(得分:1)
我想我会改用重复控件。
靠近顶部建立与数据的链接:
<xp:this.data>
<xp:dominoView var="contactsView"
viewName="TeamDirectoryNameLU">
</xp:dominoView>
</xp:this.data>
然后,你想要“观看”的地方:
<ul>
<xp:repeat id="contactRepeat" rows="30" value="#{contactsView}" var="dataRow" disableOutputTag="true">
<li>
<xp:link escape="true" id="link1">
<xp:this.value><![CDATA[#{javascript:return "m_ContactDetails.xsp?action=OpenDocument&documentId=" + dataRow.getDocument().getUniversalID();}]]></xp:this.value>
<xp:this.text><![CDATA[#{javascript:return dataRow.getColumnValue("Name");}]]></xp:this.text>
</xp:link>
</li>
</xp:repeat>
</ul>
我从他们最近的移动应用视频中获得了TeamStudio的基础知识。它是jQuery支持的联系人列表的一部分,它为您点击的联系人打开联系人详细信息XPage。