AJAX 提交行为

将页面中“panel”标记的内容替换为原始页面中的内容。将使用 AJAX POST 请求(子请求)检索此内容。因此,检索附加内容时,不会重新绘制整个页面。该面板所在表单的值将作为该请求的组成部分提交至服务器。

发送组件的 JSF 标记

<hx:ajaxRefreshSubmit>

基本 HTML

只能从 JWL GET 操作中进行调用,并且,此操作必须是与任何支持事件处理程序的 HTML 标记相连的行为(例如通用行为)的组成部分。GET 的目标必须是包含此行为(或者作为此行为的目标)的面板的 ID。

JavaScript 构造函数

hX_5.addBehavior("id", "onget", new hX_5.JSFBehaviorAjaxSubmit(attributes)); 其中

id

组件所连接至的 HTML 标记的 ID。

属性

逗号分隔的属性列表,其中每个属性都是一个加引号的字符串,此字符串包含使用冒号分隔的属性名称和值,例如,"label:MyLabel"。

受支持的事件

事件

描述

onget

注意特殊事件名称的用法。此事件为必需事件。

属性

表 1.

属性名称

描述

title

当请求正在进行时,会将 title 指定为面板的主要标记(例如,div)和为面板分配的“临时制表符停止位”。此 title 在鼠标指针悬停在面板上时显示为工具提示,此外还可供屏幕朗读器使用。

progress-actions

当请求正在进行时,要应用于面板的 JWL 操作。当前,仅支持 LOCKED 操作。

on-start

在发送请求前,将执行此 JavaScript™ 函数。它没有任何参数。如果它返回 false,则将中止执行。此函数可以与 oncomplete 配合使用来定制执行请求过程中所显示的内容。

on-error

如果请求失败/超时,则将执行此 JavaScript 函数。此函数的特征符通常是 function(thisObj, thisError),其中 thisObj 指向面板,而 thisError 是描述错误的字符串。

on-complete

如果请求成功,则替换面板的内容后,将执行此 JavaScript 函数。此函数没有任何有意义的参数。

on-start

在发送请求前,将执行此 JavaScript 函数。它没有任何参数。如果它返回 false,则将中止执行。此函数可以与 oncomplete 配合使用来定制执行请求过程中所显示的内容。

序列

当发出“GET”时运行。不会停止该事件,应该在起始行为中编码“STOP”操作。

API 调用

表 2. API 调用

API 调用

描述

object = setAttribute(attribute)

设置属性,或如果以前已设置属性,则更改其值。

string = getAttribute(attribute-name)

检索属性的当前值。

示例代码

对 ID 为“form1:panelHelp”的面板添加 AJAX 检索操作。发出该请求时,会将该面板所在表单的内容提交至服务器。

hX.addBehavior("form1:panelHelp", "onget", new hX.JSFBehaviorAjaxSubmit("on-error:return doError(this, event);", "on-start:return doPrep(this, event);"));

反馈