f:ajax和a4j:ajax标签之间有什么显着区别吗?
f:ajax
a4j:ajax
我知道A4J:从RichFaces的4 AJAX基于天然F:AJAX JSF2标签添加f中未发现的一些属性:阿贾克斯一样onbegin,onbeforedoupdate,bypassUpdates,limitRender,status和focus,但使用哪一个时,我只需要发送一个简单的Ajax请求或部分渲染?f:ajax和a4j:ajax之间是否存在性能问题?
onbegin
onbeforedoupdate
bypassUpdates
limitRender
status
focus
该<a4j:ajax>标签只是基本的更方便的形式<f:ajax>标记。您可以在此页面中找到所有差异的不错概述。
<a4j:ajax>
<f:ajax>
该execute属性支持@region指向的额外值<a4j:region>。任何EL in execute和render属性都在当前请求而不是初始请求中解析。
execute
@region
<a4j:region>
render
所述的JS功能onevent两个标签的属性将被调用3次(传入的data.status具有随后的值begin,complete,success)。当您仅对其中之一感兴趣或想要区别对待它们时,这将迫使您使用switch或if。将<a4j:ajax>使得这个更方便使用onbegin,onbeforedomupdate并oncomplete分别属性。
onevent
data.status
begin
complete
success
switch
if
onbeforedomupdate
oncomplete
如果您对任何这些增强都不感兴趣,那么使用也<f:ajax>应该很好。性能差异是(并且必须)完全可以忽略的,而不是选择其中一个的理由。