可为父构件增加客户端事件侦听器,在父构件产生相应客户端事件时向服务器发送一个ajax请求,调用指定的服务器端方法。
从另一个角度说,使用AjaxAction使得服务器端具备了监控客户端事件的能力。当被监控的客户端事件被触发时,服务器端将有机会执行相应的逻辑代码。
表 32.2. 构件信息
| Component Type | org.operamasks.faces.component.ajax.AjaxAction |
| Component Family | javax.faces.Command |
| Component Class | org.operamasks.faces.component.ajax.AjaxAction |
| Tag Class | org.operamasks.faces.webapp.ajax.AjaxActionTag |
| Renderer Type | org.operamasks.faces.component.ajax.AjaxAction |
| Renderer Class(AJAX) | org.operamasks.faces.render.ajax.AjaxActionRenderer |
+java.lang.Object
++javax.faces.component.UIComponent
+++javax.faces.component.UIComponentBase
++++javax.faces.component.UICommand
+++++org.operamasks.faces.component.ajax.base.AjaxActionBase
++++++org.operamasks.faces.component.ajax.AjaxAction
表 32.3. 属性
| action | 定义类 | javax.faces.component.UICommand | ||
| 类型 | javax.el.MethodExpression(javax.el.MethodExpression) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 特定Action事件激活时调用的方法 | ||||
| actionListener | 定义类 | javax.faces.component.UICommand | ||
| 类型 | javax.el.MethodExpression(javax.el.MethodExpression) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 特定ActionEvent事件激活时调用的方法 | ||||
| binding | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | javax.el.ValueExpression(javax.faces.component.UIComponent) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 一个值表达式,用于把该组件链接到一个ManagedBean的某个属性。 | ||||
| event | 定义类 | org.operamasks.faces.component.ajax.AjaxAction | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 父构件需要被监控的客户端事件,常用的有onclick,onfocus,onblur,onchange,onselect等,具体请看每个构件的详细说明 | ||||
| id | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | java.lang.String | |||
| 是否必须 | 否 | 延时求值 | 否 | |
| 这个组件的组件标识符。这个值在最近的命名容器类型的父组件范围内,必须是唯一的。 | ||||
| immediate | 定义类 | javax.faces.component.UICommand | ||
| 类型 | javax.el.ValueExpression(boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 是否跳过验证 | ||||
| isAjaxSubmit | 定义类 | org.operamasks.faces.component.ajax.AjaxAction | ||
| 类型 | javax.el.ValueExpression(java.lang.Boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| Action提交的形式,默认是以ajax形式提交 | ||||
| rendered | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | boolean(boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 一个标志,指出该组件是否要在任何随后的form提交过程中被渲染或处理。 这个属性的缺省值是true。 | ||||
| value | 定义类 | javax.faces.component.UICommand | ||
| 类型 | java.lang.String | |||
| 是否必须 | 否 | 延时求值 | 否 | |
| 构件的当前值 | ||||