Actionfunction:可以直接调用control class中的方法。定义的方法类似于通过javascript实现ajax的代码,可以异步刷新数据。
Actionsupport:需要把该方法放到需要调用的组件中,并且需要定义触发时间,如单击双击等。
在使用这两种方法的时候时常 遇到无法获取从页面传递过来的参数的问题,这里需要注意reRender参数的使用,需要将该方法渲染到需要获取参数的组件上,就可以解决该问题了。并且reRender还可以控制页面刷新的范围。
并且在control class中,pagereference 定义的方法和void定义的方法的区别,是pagereference会刷新页面,或者局部刷新。而void则不会。
从页面获取参数的方法:
ApexPages.currentPage().getParameters().get('myParamName')
在两个页面间传递参数的方法:
PageReference.getParameters().put('id', myID); ApexPages.currentPage().getParameters().get('id');