行为组件

Java™ 窗口小部件库(JWL)行为用于添加事件处理程序,这些事件处理程序对外围标记执行常用函数。例如,您可以对 input 标记的 onblur 处理程序添加 JWL 行为,以便在 onblur 事件触发时对该标记的值进行验证。

当行为被调用时,它会运行一个或多个 JWL 操作以及任何提供的 Javascript。JWL 操作是预定义的 Javascript 块,例如,“禁用字段”、“隐藏字段”和“显示警报框”。此外,某些行为(特别是用于处理验证的行为)还可以切换与字段相关联的 CSS 类以及执行函数和操作。

JWL 行为将添加到对象的事件处理程序中,而不是替换该事件处理程序。例如,可以将 JavaScript™ 功能连接至对象的 onblur 处理程序,然后再将一个行为连接至 onblur 函数。在事件被触发时,将同时运行事件处理程序和行为。

执行顺序

如果行为可以执行用户提供的 Javascript 函数,则该函数将在任何 JWL 操作之前执行。如果该函数返回 false,则不会执行这些操作。同样,如果该函数返回 false,则不会应用任何 CSS 样式。操作的行为与此类似 - 如果操作返回 false,则不会执行任何其他操作。

如果除了行为以外还提供了 JavaScript 事件处理程序,例如,将脚本连接至 onblur 事件处理程序,然后将一个行为连接至同一个 onblur 事件处理程序,则提供的 JavaScript 是先执行还是后执行取决于该事件。如果 JavaScript 事件处理程序先运行并返回 false,则不会运行该行为。

提供了以下行为标记:

选用板上最初处于隐藏状态的组件在表中将用其名称旁边的星号(*)表示。

表 1. 用作事件处理程序的行为标记
组件 标记名 描述
一般行为 <hx:behavior> 将 JWL 操作和/或 JavaScript 指定给 DOM 事件处理程序。
按键行为 <hx:behaviorKeyPress> 当组件或组件的内容具有焦点时,将 JWL 操作和/或 JavaScript 指定给按下功能/控制键这一操作。
鼠标右键单击行为 <hx:behaviorRightMouse> 在组件或组件的内容上单击鼠标右键时,对这一操作指定 JWL 操作和/或 JavaScript。
输入辅助行为 <hx:inputHelperAssist> 对 inputText 字段指定客户端验证、输入提示和自动切换等等。
字段跟踪行为 <hx:inputHelperFormTracker> 启用字段/光标跟踪以便在提交表单时,将有关焦点/光标最后所在位置的信息作为提交的一部分传送。此标记主要在基于 iSeries 的应用程序中使用。
键绑定行为 <hx:inputHelperKeybind> 现建议不要使用。替换为 hx:behaviorKeyPress。
设置初始焦点行为 <hx:inputHelperSetFocus> 当页面装入时,将初始焦点设置到该页面上的某个控件。
预先输入补全组件 <hx:inputHelperTypeahead> 对 inputText 字段指定预先输入支持(自动建议或自动补全)。
相关概念
异步 JavaScript 和 XML(AJAX)组件
JavaServer Faces(JSF)概述
JSF 窗口小部件库(JWL)
使用 JavaServer Faces(JSF)开发 Web 应用程序

反馈