【问题标题】:Convert String to Clickable Link将字符串转换为可点击的链接
【发布时间】:2021-05-13 17:15:38
【问题描述】:

我正在创建一个显示用户历史记录的网页。用 Java 编写,我有 pojo,其中包含我的 jsf 通过 bean 注入检索的属性。问题:其中一个值是 url。目前,字符串是一个长网址,但不可点击。还要注意,这些值(字符串)位于 ArrayList 中。如何分配包含 url 的 String 值并输出可点击的 url?

userHistoryDe​​tails.completeData bean 可能看起来像这样(sudo):

[{status=complete,userid=123,reportUrl=http://www.reporturl.com}]

在我的 jsf 文件中创建的表示例。其中#{cRow[cColModel.value]} 在表中创建一行,并带有相应的标题值。

<ace:dataTable id="completedTable"
    value="#{userHistoryDetails.completeData}" var="cRow"
    paginator="true" rows="50" paginatorPosition="both"
    emptyMessage="NO RECORDS TO DISPLAY">
    <c:forEach items="#{userHistoryDetails.userHistoryHeaders}"
        var="cColModel">
        <ace:column headerText="#{cColModel.headerText}">
                #{cRow[cColModel.value]}
        </ace:column>
                </c:forEach>
</ace:dataTable>

如果这没有意义,请告诉我。这有点难以解释。提前致谢!

编辑我尝试将字符串更改为:

    [{status=complete,userid=123,reportUrl=<a href="http://www.reporturl.com">View report</a>}]

但仍然没有运气。我觉得我在正确的轨道上,只是错过了一些东西。

【问题讨论】:

  • 使用 标签
  • @BrunoCL 尝试了您的建议,但没有运气。我错过了什么吗?
  • 在您的模型中使用 URL 并在您的 ace:column 中使用 h:outputLink 来创建链接

标签: jsf icefaces


【解决方案1】:

如何分配包含 url 的 String 值并输出可点击的 url?

两种方式:

<a href="#{bean.url}">#{bean.url}</a>
<h:outputLink value="#{bean.url}">#{bean.url}</h:outputLink>

userHistoryDe​​tails.completeData bean 可能如下所示(sudo):

[{status=complete,userid=123,reportUrl=http://www.reporturl.com}]

在我的 jsf 文件中创建的表示例。其中#{cRow[cColModel.value]} 在表中创建一行,并带有相应的标题值。

所以.. 如果#{cColModel.value} 等于reportUrl 你想生成一个链接?看起来应该是这样的:

<ui:fragment rendered="#{cColModel.value eq 'reportUrl'}">
    <a href="#{cRow[cColModel.value]}">#{cRow[cColModel.value]}</a>
</ui:fragment>
<ui:fragment rendered="#{cColModel.value ne 'reportUrl'}">
    #{cRow[cColModel.value]}
</ui:fragment>

【讨论】:

  • 非常感谢您的帮助:)。单独的问题,我能够创建一个可点击的链接,但它重定向到:about:blank#blocked。你以前见过这个吗?
  • 我发现了问题,但想再次感谢您。这个建议非常有效。
猜你喜欢
  • 2013-04-07
  • 1970-01-01
  • 1970-01-01
  • 2014-02-22
  • 1970-01-01
  • 2022-11-24
  • 1970-01-01
  • 2015-12-03
  • 1970-01-01
相关资源
最近更新 更多