h:commandLink不能正常工作



我有一个问题,它反过来又引起了很多头痛。我需要动态地创建链接到JSF actionListener的按钮/图像。下面是代码:

HTML:

<h:form>
  <div class="carousel-container">
    <div id="carousel">
      <h:outputText value="#{courseBean.course}" escape="false"/>
    </div>
  </div>
</h:form>

courseBean什么。course gets是重写的toString,它返回以下内容:

@Override
public String toString() {
    return "<div class="carousel-feature"> "
            + "<h:commandLink id="" + courseID + "" actionListener="#{courseBean.getCourseSelected}">"
            + "<img class="carousel-image" src="Images/testButton.jpg"/>"
            + "<span style="display:bloack; position:absolute; top:20px; bottom:20px; left:0; right:0; "
            + "background:white; background:rgba(255, 255, 255, 0.25);">" + courseName + "</span>"
            + "</h:commandLink> "
            + "<div class="carousel-caption"> "
            + "</div>"
            + "</div>";
}//end method toString

HTML被渲染得很好,图像被显示在轮播中,但是当它被点击时,actionListener没有被调用,这就是这里的问题。

编辑:actionListener只打印courseID到控制台没什么大不了的。

感谢您的宝贵时间。

这种方法是错误的,如果您执行"查看源代码",您将在页面的源代码中看到<h:commandLink(因为它根本不会被JSF生命周期处理),而如果您在xhtml页面中有<h:commandLink,则生成的html源代码将包含<a href....>元素

你最好重新考虑你最初的目标,并问一个如何实现它的问题。

相关内容

  • 没有找到相关文章

最新更新