我在我的项目中使用JSF。我正在使用PrimeFaces的上下文菜单。我在p:menuItem
中看到我们有action
,actionListener
,onclick
方法。所以我的问题是:我何时必须使用action
,actionListner
,onclick
以及执行的顺序是什么?
答案 0 :(得分:16)
onclick
将首先执行。它用于调用javascript函数。
actionListener
方法。该方法应该具有返回类型void
,即方法
或者以ActionEvent
作为参数或不参数;它可以
也可用于非ajax调用,但页面将刷新。
action
用于导航到其他页面;方法应该
返回类型为String
。
答案 1 :(得分:2)
之前已经问过这个问题。 如果要在辅助bean中调用方法,则使用Action。 e.g
action="#{myBean.myMethod}"
bean的代码就像
@ManagedBean(name = "myBean", eager = true)
@ViewScoped
public class MyBean{
myMethod(){
// your method code here
}
}
除了用事件触发
之外,动作监听器如何做同样的事情myMethod(Event e){
// your method code here
}
请注意,事件可以是任何类型。
onclick在发送ajax请求之前工作我没有太多知识aboput它...我只是用于UI目的,例如关闭单击按钮上的对话框
<p:commandButton id="cancel" value="Cancel"
icon="ui-icon ui-icon-arrowreturnthick-1-w"
style="float:right;" onclick="PF("dlg").hide()" type="button">
</p:commandButton>
另请参阅