4

当我单击表格行时,我想传递值:

<h:outputLink id="lnkHidden" value="DatacenterProfile.html" style="text-decoration:none; color:white;">
    <f:setPropertyActionListener target="#{DatacentersController.selectedId}" value="#{item.componentStatsId}" />
</h:outputLink>

我收到此错误:

<f:setPropertyActionListener> Parent 不是 ActionSource 类型,类型是:javax.faces.component.html.HtmlOutputLink@aa25b91

是否有任何合适的 JSF 标签可用于替换<h:outputLink>

4

3 回答 3

5

f:setPropertyActionLister仅适用于和之类的ActionSource组件。如果你想这样做,你应该使用其中之一。也可以看看h:commandLinkh:commandButton

于 2013-03-24T14:31:08.443 回答
1

您是否希望您的 URL (href) 被保留,或者您只是希望它像一个按钮一样起作用?

  1. 如果您希望保留 URL(显然是它的参数,因此您可以在其他选项卡等中打开它),只需使用f:param而不是f:setPropertyActionLister.
  2. 如果丢失 URL 显示(没有显示有意义的 url),您可以按照 Chkal 所说的那样使用,commandButton或者commndLink
于 2013-03-24T16:23:42.120 回答
0

除了@BalusC 答案。我在我的项目中使用过类似的东西。

<h:commandButton 
       id="" 
       styleClass="" 
       type="submit" 
       rendered="#{}" 
       value="#{}" 
       action="#{}"> 
       <f:setPropertyActionListener target="#{}" value="#{}" /> 
</h:commandButton>

您可以根据您的场景传递/使用属性。

于 2019-03-08T18:08:24.500 回答