【问题标题】:Which Seam component to use: <h:outputLink> or <h:commandLink>?使用哪个 Seam 组件:<h:outputLink> 或 <h:commandLink>?
【发布时间】:2026-01-23 15:55:02
【问题描述】:

我对 Seam 非常陌生,并且刚刚习惯了可用的不同组件。我想知道在这种情况下我应该使用哪一个。

this 问题的答案解释了&lt;h:outputLink&gt;&lt;h:commandLink&gt; 之间的区别,&lt;h:outputLink&gt; 仅生成带有 GET 请求的基本 HTML 链接标记,&lt;h:commandLink&gt; 通过点击事件提交 POST。

我只想将一个简单的 jQuery 点击事件附加到一个链接。我不希望链接重定向到任何地方或提交表单。我基本上想要 href="#" 的等价物(我知道 commandLink 生成 href="#" 但对于没有表单提交的简单链接来说似乎很笨拙)。但是&lt;h:outputLink&gt; 隐式添加了一个 href 值,除非我输入 value="#" (这看起来很 hacky)。

我想在这里使用什么组件?我似乎遗漏了一些非常基本的元素。

【问题讨论】:

    标签: seam


    【解决方案1】:

    (首先:&lt;h:outputLink&gt;&lt;h:commandLink&gt; 是标准 JSF 组件,不是 Seam 框架的一部分。)在这种情况下,您可以只使用标准 HTML 标记 &lt;a&gt;,因为您似乎没有使用任何东西JSF 特有的。

    【讨论】: