在JSF2中渲染HTML5按钮(按钮,重置和提交)

时间:2013-07-24 19:16:43

标签: java jsf-2

您可能知道可以用2种方法在HTML5中渲染按钮:

  • 使用void element <input type="button" />
  • 如果您需要内容,请使用<button></button>元素(不是void元素)。

在JSF2中,有两种生成按钮的方法;使用UICommandUIOutcomeTarget组件。我理解这两个组件是什么,我的问题是什么是2个HTML5按钮类型的最佳组件,如果在JSF2中创建这些HTML5组件?

到目前为止,最好的方面是为每个HTML5元素创建UICommandUIOutcomeTarget

1 个答案:

答案 0 :(得分:4)

UICommand组件应该用于<h:commandButton type="submit">之类的POST按钮,而UIOutcomeTarget组件应该用于<h:button>之类的GET按钮。 void按钮在JSF中由<h:commandButton type="button">表示,基本上是UICommand,但它没有做任何事情。

JSF2没有任何生成<button>的组件。提到的组件生成<input>。然而,PrimeFaces的<p:commandButton><p:button>会产生一个值得信赖的<button>(唯一的原因是因为它可以让CSS更容易控制look'n'feel)。

如果您打算创建一个生成<button>并希望在UICommandUIOutcomeTarget之间做出决定的自定义组件,那么您应该根据所需的HTML按钮表示最终触发POST或GET请求。如果您的按钮应同时支持,请转到UICommand

另见:


对具体问题

无关,这些按钮都不是特定于HTML5的。它们已经存在于之前的HTML版本中。