我有一个表单,有3个按钮。 (完成,保存,取消)
完成应结束任务并导航回任务概述。 保存应保存所做的更改并导航回任务详细信息 取消不应该保存任何东西,但导航回细节。
问题现在是“保存”:我不想提交表单并调用actionListener来执行“保存”。但是我想把一个id传递给按钮的“导航结果”
在普通的HTML中,它看起来像这样:
<form action="taskDetails?id=5" method ="post">
....
</form>
所以所有参数都是使用POST
提交的,但是可以通过GET
获取该ID。
我如何使用JSF Forms实现这一目标?
我的按钮目前看起来像:
<h:form>
...
<p:commandButton action="taskDetails" actionListener="taskEditBean.saveTask()" value="Save" />
</h:form>
使用f:params这样:
<h:form>
...
<p:commandButton action="taskDetails" actionListener="taskEditBean.saveTask()" value="Save">
<f:param name="id" value="5" />
</p:commandButton>
</h:form>
也使用POST
提交...
答案 0 :(得分:0)
如果我认为您的具体功能要求是正确的,那么这就是您所需要的:
<p:commandButton value="Save" action="#{taskEditBean.saveTask}" />
与
public String saveTask() {
// ...
return "taskDetails?id=5&faces-redirect=true";
}
这将在POST后将重定向发送到所需的URL。