ajax4jsf常用标签的使用

   转载:ajax4jsf常用标签的使用

 

ActionListener或者ValueChangeListener的工作方式一样, 只是仅用于AJAX容器. 添加一个指定的类作为AjaxEvent的监听器. (sent in case of an AJAX request for this container).

Table 4.1. a4j:ajaxListener attributes

type

注册到AjaxListener 中类的完全限定的Java类名

 

    <a4j:region selfRendered="true" ajaxListener="#{bean.processAjax}" id="Region">              </a4j:region>   

当来自于RegionAJAX request触发时,将调用bean'processAjax'方法.

a4j:region

该标签定义在AJax请求处理过程中被发送到服务器端解码的部分JSF组件树.

Table 4.2. a4j:region 的属性

selfRendered

如果为true,在调用应用程序(InvokeApplication )阶段自渲染子树(如果immediate 属性设置为true则是 Decode)

renderRegionOnly

标记,用来决定活动区域外的内容在Ajax响应中是否渲染.如果为"true" , AJAX response过程中活动区域外的组件都不渲染. 如果为"false", 将渲染包含在响应中的所有组件树.默认值为"true"

rendered

如果为 false, 该组件将不被重新渲染.

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

immediate

如果该组件被Ajax请求激活的话,标记该组件应该立即(在应用请求值阶段)被感兴趣的监听器和动作处理,而不是等到调用应用程序阶段.(译者注:该标记和JSF中的immediate标记所代表的意思差不多,跳过验证阶段到呈现响应阶段)

binding

组件绑定

ajaxListener

方法绑定,当该组件被ajax请求激活时,将调用该监听器方法处理该事件.该方法必须为public的并且接受一个 AjaxEvent 参数,返回void.

 

    <a4j:region>        <!--Some content-->    <a4j:region>   

如果在该组件的区域中有一个Ajax请求调用了该区域将根据Ajax的设置被框架处理.

a4j:page

该组件呈现一个完全的HTML页面结构.它必须是view root (JSP <f:view> tag)的第一个(并且是仅有的一个)子组件. 没有Html代码可以在该组件的外面. 它也支持在Ajax请求中处理子组件,就和<a4j:region>一样.对于一个普通的请求,它将把结果呈现为在客户端页面<head>元素中的<script>元素.如果该组件包含一个"head" facet, facet的内容也呈现在<head>.对于一个Ajax请求,在整个结构中仅仅涉及到的组件被呈现.下面是个在JSP (jspx version)中使用它的例子:

<jsp:root xmlns:....

<f:view>

<a4j:page>

<f:facet name="head">

...

</f:facet>

<!-- page content here -->

</a4j:page>

</f:view>

</jsp:root>

Table 4.3. a4j:page attributes

selfRendered

如果为true,在调用应用程序(InvokeApplication )阶段自渲染子树(如果immediate 属性设置为true则是 Decode)

lang

用来描述在产生该组件的markup时用到的语言(产生该组件标记所使用的语言)

title

该组件产生的Markuptitle属性值

renderRegionOnly

renderRegionOnly

onunload

在页面unload时执行的JS代码

rendered

如果是 false, 该组件不会被呈现.

contentType

设置响应的自定义的mime内容类型

dir

文本方向

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

styleClass

HTML class 属性对应.

immediate

如果该组件被Ajax请求激活的话,标记该组件应该立即(在应用请求值阶段)被感兴趣的监听器和动作处理,而不是等到调用应用程序阶段.(译者注:该标记和JSF中的immediate标记所代表的意思差不多,跳过验证阶段到呈现响应阶段)

onload

在页面load时执行的JS代码

style

在该组件被呈现时应用的CSS style(s)

pageTitle

作为页面 title的字符串

binding

组件绑定.

ajaxListener

方法绑定,当该组件被ajax请求激活时,将调用该监听器方法处理该事件.该方法必须为public的并且接受一个 AjaxEvent 参数,返回void.

 

        <a4j:page>      <f:facet name=”head”>                        </f:facet>                <a4j:page>   

上面的示例结构将被呈现为:

        <HTML>        <HEAD>                     </HEAD>         <body >                    </body>     </HTML>   

a4j:support

UIComponent-based组件上添加ajax功能,使他们有JavaScript事件属性. 在解码期间:如果一个请求为Ajax-performed, ExternalContext 中的requestParameterMap属性中得到Map,如果该Map"clientId" key对应的值非空,在组件上创建一个 javax.faces.event.ActionEvent, 并且传递该事件到该组件的queueEvent(),然后把他的reReander区域中的组件id添加到reReander属性中.在编码过程中.不编码一个组件. 相反的,在父组件上添加一个与事件属性的值相同的值绑定(Instead, it adds ValueBinding for a property of the parent component with the name as a value of its "event" property).结果,当呈现时,父组件创建一个在提交一个ajax请求时用到的JS代码.如果该组件有子UIParameter组件,添加他的name/value作为附加的请求参数.如果父组件是一个UIInput的实例,并且ajaxType属性是input, 则也提交input 域中的值. 在这种情况下,你可以在UIForm外面提交一个单一的input. (As a result, when rendered, the parent component builds JavaScript code for submitting an AJAX request on this event. If the component has child UIParameter components, appends it's name/value as additional request parameters. If a parent component is an instance of UIInput and the ajaxType property is "input", submits the value of the input field, also. In this case, you can submit a single input field outside of UIForm.)

Table 4.4. a4j:support 属性

actionListener

方法绑定,当该组件被ajax请求激活时,将调用该监听器方法处理该事件.该方法必须为public的并且接受一个 AjaxEvent 参数,返回void.

parentProperties

parentProperties

action

方法绑定到要被激活的程序动作方法, 如果该 UIComponent 被用户激活, 根据immediate属性的值,方法在 请求处理生命周期中的Apply Request Values 或者 Invoke Application 阶段 被调用.

oncomplete

在客户端请求完成时调用的js代码

rendered

如果为false,该组件将不会被显示.

status

Request status 组件的id( UIComopnent.findComponent()中使用)

reRender

该组件调用Ajax请求后重新渲染的组件的ID( UIComopnent.findComponent()中使用),可以使一个id,也可以使逗号分开的很多id,或者是数据or集合的EL表达式

targetId

reRender的别名 : 该组件调用Ajax请求后重新渲染的组件的ID( UIComopnent.findComponent()中使用),可以使一个id,也可以使逗号分开的很多id,或者是数据or集合的EL表达式

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

disableDefault

使目标事件的动作不可用 ( javascript代码中添加 "return false;" )

requestDelay

JS事件上延迟 ( 单位 ms. )发送Ajax请求.与事件队列公共工作可以减少键盘或者鼠标移动触发请求的次数

eventsQueue

用来避免在同一个事件上的重复请求的队列的名字.可以用来减少周期事件(:按键,鼠标移动)请求的次数.

bypassUpdates

如果使true,在处理验证阶段后跳过更新模型值阶段到呈现阶段.可以用来验证组件的输入值.

immediate

如果该组件被Ajax请求激活的话,标记该组件应该立即(在应用请求值阶段)被感兴趣的监听器和动作处理,而不是等到调用应用程序阶段.(译者注:该标记和JSF中的immediate标记所代表的意思差不多,跳过验证阶段到呈现响应阶段)

limitToList

如果为true,仅仅更新'reRender'属性中指定的组件,否则(默认值)更新所有Ajax Region中的组件

ajaxSingle

如果为 true , 仅仅提交一个field/link,而不是整个form中的内容.

event

父组件的JS事件属性的名称 ( onclick , onchange, etc. ) , for which we will build AJAX submission code.

binding

组件绑定.

 

所有你需要指定的东西 - 父组件用来触发ajax请求的事件和被reRender的区域, 和处理事件的Java bean方法.

    <a4j:region selfRendered="true">                <h:selectBooleanCheckbox value="#{pizza.tip}">            <a4j:support event="change" reRender="#{partsId.list}"            action="#{Some.show_hide}"/>        </h:selectBooleanCheckbox>            </a4j:region>       

因此,在上面的例子中,checkbox状态的改变将提交当前的区域. 'show_hide'动作将被调用,并且 'list'中的id所指定的组件将被更新.

a4j:commandLink

呈现一个Html <a> 元素,当点击时的动作就象一个form提交一样.

在解码的过程中:

ExternalContext的属性requestParameterMap中得到一个Map,如果该Map中包含"clientId" key的非空值, 在组件上创建一个 javax.faces.event.ActionEvent 事件,并且传递该事件给组件的queueEvent() 方法.如果该请求是Ajax-performed,reRander属性中的IDs值添加到嵌套的AjaxContainer rendered areas list ,在解码的过程中也添加组件的参数(PARAM_NAME PARAM_VALUE 是任何嵌套的子UIParameternames values .) names values必须是被URLEncoded处理过的.如果styleClass属性被指定了,呈现它的值为html中的class属性的值. 呈现任何non-UIParameter子组件为<a>的相应的子组件. 这些看起来就像一个Link文本.

Table 4.5. a4j:commandLink attributes

actionListener

方法绑定,当该组件被ajax请求激活时,将调用该监听器方法处理该事件.该方法必须为public的并且接受一个 AjaxEvent 参数,返回void.

title

该组件产生的标记元素的提示文字(当鼠标移动到该组件上面出现的提示文字)

oncomplete

在客户端请求完成时调用的js代码

shape

default|rect|circle|poly [CI] 该属性指定一个区域的形状.可能的取值: * default: 指定整个区域. * rect:指定一个矩形区域. * circle: 定义一个圆形区域. * poly: 定义一个多边形区域.

target

 

rendered

如果为false,该组件将不会被显示.

charset

该属性指定了通过链接指派的资源的字符编码.

reRender

该组件调用Ajax请求后重新渲染的组件的ID( UIComopnent.findComponent()中使用),可以使一个id,也可以使逗号分开的很多id,或者是数据or集合的EL表达式

targetId

Alias for reRender : 该组件调用Ajax请求后重新渲染的组件的ID( UIComopnent.findComponent()中使用),可以使一个id,也可以使逗号分开的很多id,或者是数据or集合的EL表达式

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

dir

文本方向.

rev

该属性用来描述从通过 href 属性指定的锚点到当前文档的反向链接。该属性值是通过空格分隔的 link 类型()的列表。

bypassUpdates

如果使true,在处理验证阶段后跳过更新模型值阶段到呈现阶段.可以用来验证组件的输入值.

styleClass

HTMLclass属性一样.

accesskey

触发该组件的快捷键

limitToList

如果为true,仅仅更新'reRender'属性中指定的组件,否则(默认值)更新所有Ajax Region中的组件

onkeypress

键盘事件,键被按下和松开

ajaxSingle

如果使true,仅仅提交一个field/link,而不是所有被控制的

ondblclick

HTML: 双击事件

style

HTML: 应用在该组件上的CSS.

onblur

当元素失去焦点时发生的事件

onmouseover

当滑鼠移动到组件上方时

onkeyup

当使用者按下并放开按键

value

该组件的当前值

action

方法绑定到要被激活的程序动作方法, 如果该 UIComponent 被用户激活, 根据immediate属性的值,方法在 请求处理生命周期中的Apply Request Values 或者 Invoke Application 阶段 被调用.

tabindex

设置不同元素之间获得焦点的顺序

hreflang

该属性指定了通过 href 指派的资源的基本语言,并且仅在 href 被指定的情况下使用(也就是说如果 A 中没有指定 href 属性,就不应该出现 hreflang 属性)

type

该属性指定链接资源所采用的内容类型。(译者注:例如网页通常为 text/html)

lang

产生该组件标记所使用的语言

onclick

当鼠标点击时发生的事件

status

请求状态组件的ID(UIComopnent.findComponent()中使用)

onmouseout

鼠标光标移开元素时发生的事件

onkeydown

键按下时发生的事件

onmousedown

按下鼠标按键时发生的事件

requestDelay

JS事件上延迟 ( 单位 ms. )发送Ajax请求.与事件队列公共工作可以减少键盘或者鼠标移动触发请求的次数

eventsQueue

用来避免在同一个事件上的重复请求的队列的名字.可以用来减少周期事件(:按键,鼠标移动)请求的次数.

rel

该属性描述了从当前文档到通过 href 属性定义的锚点之间的关系。该属性值是通过空格分隔的 link 类型()的列表(译者注: Web 标准开发中,这个通常用来代替 target 属性,配合脚本,用来表示目的窗口)

immediate

如果该组件被Ajax请求激活的话,标记该组件应该立即(在应用请求值阶段)被感兴趣的监听器和动作处理,而不是等到调用应用程序阶段.(译者注:该标记和JSF中的immediate标记所代表的意思差不多,跳过验证阶段到呈现响应阶段)

onfocus

使用在表单元素中,当元素获得焦点时发生的事件

onmouseup

当释放鼠标按键时发生的事件

binding

组件绑定.

onmousemove

鼠标光标在元素上移动时发生的事件

coords

定义区域 -- coords
a.
矩形:必须使用四个数字,前两个数字为左上角座标,后两个数字为右下角座标
例:<area shape=rect coords=100,50,200,75 href="URL"
b.
圆形:必须使用三个数字,前两个数字为圆心的座标,最后一个数字为半径长度
例:<area shape=circle coords=85,155,30 href="URL"
c.
任意图形(多边形):将图形之每一转折点座标依序填入
例:<area shape=poly coords=232,70,285,70,300,90,250,90,200,78 href="URL"

 

通常a4j:commandLink 是一个 具有AJAX 支持的HTML <input> 元素. 包含所有的a4j:support的主要功能, 还有它自己的onclick事件的Ajax请求和所有与a4j:Support组合的CommandLink特性.

a4j:commandButton

呈现一个HTML "input" 元素.

在解码的过程中:

ExternalContext的属性requestParameterMap中得到一个Map,如果该Map中包含"clientId" key的非空值, 在组件上创建一个 javax.faces.event.ActionEvent 事件,并且传递该事件给组件的queueEvent() 方法.如果该请求是Ajax-performed,reRander属性中的IDs值添加到嵌套的AjaxContainer rendered areas list .

在编码的过程中:

onclick事件创建一个AJAX.Submit JavaScript调用.呈现组件的clientId name属性的值.呈现组件的当前值为value属性的值.

如果styleClass属性被指定了,呈现它的值为class属性的值. 呈现 HTML "input"元素的子元素.

Table 4.6. a4j:commandButton attributes

actionListener

方法绑定,当该组件被ajax请求激活时,将调用该监听器方法处理该事件.该方法必须为public的并且接受一个 AjaxEvent 参数,返回void.

title

该组件产生的标记元素的提示文字(当鼠标移动到该组件上面出现的提示文字)

oncomplete

在客户端请求完成时调用的js代码

rendered

如果为false,该组件将不会被显示.

reRender

该组件调用Ajax请求后重新渲染的组件的ID( UIComopnent.findComponent()中使用),可以使一个id,也可以使逗号分开的很多id,或者是数据or集合的EL表达式

targetId

Alias for reRender : 该组件调用Ajax请求后重新渲染的组件的ID( UIComopnent.findComponent()中使用),可以使一个id,也可以使逗号分开的很多id,或者是数据or集合的EL表达式

onchange

使用在表单元素中,当某些东西改变时发生的事件

dir

文本方向.

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

bypassUpdates

如果使true,在处理验证阶段后跳过更新模型值阶段到呈现阶段.可以用来验证组件的输入值.

styleClass

HTMLclass属性一样.

accesskey

触发该组件的快捷键

limitToList

如果为true,仅仅更新'reRender'属性中指定的组件,否则(默认值)更新所有Ajax Region中的组件

onkeypress

键盘事件,键被按下和松开

ajaxSingle

如果使true,仅仅提交一个field/link,而不是所有被控制的

ondblclick

HTML: 双击事件

image

在这个button中要显示的图片的绝对或者相对URL 如果指定了该 "input" 元素将为"image"类型. 否则, it will be of the type specified by the "type" property with a label specified by the "value" property.

style

HTML: 应用在该组件上的CSS.

size

定义组件显示的尺度

onblur

当失去焦点时发生的事件

onmouseover

当滑鼠移动到组件上方时

value

该组件的当前值

action

方法绑定到要被激活的程序动作方法, 如果该 UIComponent 被用户激活, 根据immediate属性的值,方法在 请求处理生命周期中的Apply Request Values 或者 Invoke Application 阶段 被调用.

onkeyup

当使用者按下并放开按键

tabindex

设置不同元素之间获得焦点的顺序

lang

产生该组件标记所使用的语言

type

submit|reset|image|button 指定创建组件的类型,默认值为Submit.

disabled

把控件的状态设置为不能使用

onclick

当鼠标点击时发生的事件

status

请求状态组件的ID(UIComopnent.findComponent()中使用)

onmouseout

鼠标光标移开元素时发生的事件

alt

文本方向.

onkeydown

键按下时发生的事件

onmousedown

按下鼠标按键时发生的事件

requestDelay

JS事件上延迟 ( 单位 ms. )发送Ajax请求.与事件队列公共工作可以减少键盘或者鼠标移动触发请求的次数

eventsQueue

用来避免在同一个事件上的重复请求的队列的名字.可以用来减少周期事件(:按键,鼠标移动)请求的次数.

immediate

如果该组件被Ajax请求激活的话,标记该组件应该立即(在应用请求值阶段)被感兴趣的监听器和动作处理,而不是等到调用应用程序阶段.(译者注:该标记和JSF中的immediate标记所代表的意思差不多,跳过验证阶段到呈现响应阶段)

onfocus

当组件获得焦点时发生的事件

onmouseup

当释放鼠标按键时发生的事件

binding

组件绑定.

onmousemove

鼠标光标在元素上移动时发生的事件

 

简单来说a4j:CommandButton 是一个带有AJAX Support HTML <input> 元素 . 包含所有的a4j:support的主要功能, 还有它自己的onclick事件的Ajax请求和所有与a4j:Support组合的CommandButton特性.

a4j:outputPanel

创建页面中具有 AJAX-enabled的一个区域. 作为普通的请求,根据layout的属性值("inline" or "block")呈现为 <span> 或者 <div> HTML 元素. ( "id"属性将是clientId 属性的值.) 对于一个AJAX请求,如果ajaxRendered被设置为true,该元素的内容被包含在ajax响应中.

Table 4.7. a4j:outputPanel attributes

styleClass

HTMLclass属性一样.

title

该组件产生的标记元素的提示文字(当鼠标移动到该组件上面出现的提示文字)

lang

产生该组件标记所使用的语言

layout

HTML layout用于产生 markup. 可能的取值是: "block" 产生一个 HTML <div> 元素, "inline" 产生一个 HTML <span> 元素, "none"不产生 HTML 元素. 对于none 当子元素的rendered属性被设置为false 这里有个小例外 ,这是创建一个具有相同id的空 <span> 元素 作为子元素,用来当作一个用于后序处理的占位符

keepTransient

指定所有子组件为non-transient的标记.如果为true,所有的子组件将被设置为non-transient,并且在以保存的组件树中(keep in saved components tree). For output in self-renderer region all content ( By default, all content in <f:verbatim> tags and non-jsf elements in facelets, marked as transient - since, self-rendered ajax regions don't plain output for ajax processing ).

ajaxRendered

Defines, whether the content of this component must be (or not) included in AJAX response created by parent AJAX Container, even if it is not forced by reRender list of ajax action. Ignored if component marked to output by Ajax action. default false

style

HTML: 应用在该组件上的CSS.

rendered

如果为false,该组件将不会被显示.

binding

组件绑定.

dir

文本方向.

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

 

    <h:form>    <a4j:region>                   <h:outputText value="Input your name" />              <a4j:outputPanel>                      <h:message for="userName" style="color:red" />                   </a4j:outputPanel>             <h:inputText id="un" value="#{nb.userName}" required="true"/>              <a4j:outputPanel id="test" layout="block">                    <h:outputText value="#{nb.userName}" />               </a4j:outputPanel>            <a4j:commandButton value="submit"></a4j:commandLink>          </a4j:region>    </h:form>   

在上面的例子中,在每个a4j:commandButton请求时 OutputPanels 中的 outputText 将被 reRendered. 当验证错误时,消息将出现;或者,text将重复出现.

a4j:actionparam

联合两个JSF tags的桥梁, <f:actionListener>; <f:param>. 在呈现阶段,像往常一样被符组件 (<h:commandLink>; 或者 like) 解码,在处理请求阶段,如果父组件执行一个动作事件, 更新"assignTo" 属性的值为它的新值.如果一个转换属性被指定了,使用它来编码和解码该值 为保存在html 参数中的字符串.

Table 4.8. a4j:actionparam attributes

noEscape

如果设置为true,该值将不会被附上但引号 并且每一转义字符. This allows the use of the value as JavaScript code for calculating value on the client-side. This doesn't work with non-AJAX components.

value

初始化的值或者值绑定

converter

使用一个转换(converter )id 或者引用一个converter.

assignTo

EL表达式用来更新bean的属性. 如果父组件执行一个 actionEvent,该值将被更新.

binding

组件绑定.

name

该参数的名字

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

a4j:status

在客户端呈现一个表现ajax请求状态的标识.

在编码过程中:

创建两个带有id的该组件的子(clientId )span元素,或者添加了":status.start" ":status:stop" 字符串的 ajax区域的目标(使用for属性来指定). "start" span 具有 "display:none" style (隐藏).span里面,呈现startText/stopText属性值或者如果"start" "stop" facets存在的话,呈现facets的内容. 在执行一个ajax请求时, 客户端的js代码改变 "start" span 的可见属性并且隐藏"stop". 当该指示器所指示的请求都完成时,恢复"stop" 并且隐藏"start" .start[style,styleClass] stop[style,styleClass] 被呈现为 spans style class 属性 .

During Encoding: Creates two "span" elements with id created as clientId of this component or of target AJAX region (pointed to by the "for" property) with appended ":status.start" and ":status:stop" strings. "start" span has "display:none" style (hidden). Inside this span, renders the value of the startText/stopText properties or, if they exist, the content of "start" and "stop" facets. On performing an AJAX request, the client-side script changes the visibility of the "start" span and hides "stop". After all requests for this indicator are completed, restores "stop" and hide "start" start[style,styleClass] and stop[style,styleClass] are rendered for spans as style and class atributes, respectivetly.

在解码的过程中:

....

Creates two "span" or "div"(depending on 'layout' attribute) elements with id created as clientId of this component or of target AJAX region (pointed to by the "for" property) with appended ":status.start" and ":status:stop" strings. "start" element has "display:none" style (hidden). Inside this element, renders the value of the startText/stopText properties or, if they exist, the content of "start" and "stop" facets. On performing an AJAX request, the client-side script changes the visibility of the "start" element and hides "stop". After all requests for this indicator are completed, restores "stop" and hide "start" start[style,styleClass] and stop[style,styleClass] are rendered for spans as style and class atributes, respectivetly.

Table 4.9. a4j:status attributes

startStyleClass

在开始一个请求时应用到组件上的CSS

stopStyle

一个请求响应完成时应用到组件上的CSS

stopStyleClass

一个请求响应完成时应用到组件上的CSS

layout

定义面板的布局,可以为block或者inline

title

该组件产生的标记元素的提示文字(当鼠标移动到该组件上面出现的提示文字)

rendered

如果为false,该组件将不会被显示.

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

dir

文本方向.

styleClass

HTMLclass属性一样.

startStyle

在开始一个请求时应用到组件上的CSS

onkeypress

键盘事件,键被按下和松开

ondblclick

HTML: 双击事件

style

HTML: 应用在该组件上的CSS.

onmouseover

当滑鼠移动到组件上方时

for

指定应用于 AjaxContainer组件的ID ( javax.faces.UIComopnent.findComponent() 中使用).

onkeyup

当使用者按下并放开按键

lang

产生该组件标记所使用的语言

onclick

当鼠标点击时发生的事件

onmouseout

鼠标光标移开元素时发生的事件

startText

在请求开始时显示的文本

onkeydown

键按下时发生的事件

onmousedown

按下鼠标按键时发生的事件

forceId

如果为true,呈现组件idHTML代码而不是JSF产生的代码.(译者注:参考Myfaces中的ForceId.)

stopText

当请求完成时显示的文本

onmouseup

当释放鼠标按键时发生的事件

binding

组件绑定.

onmousemove

鼠标光标在元素上移动时发生的事件

 

指示请求状态的两种表示方式:

1.  定义 "startText" "stopText" 属性

                <a4j:status startText="Performing Request"         stopText="Request Done"        for="stat1"/>           

2.  定义 "start" "stop" facets

                <a4j:status for="stat2">        <f:facet name="start">              <h:graphicImage value="/images/ajax_process.gif" />        </f:facet>        <f:facet name="stop">             <h:graphicImage value="/images/ajax_stoped.gif" />        </f:facet>    </a4j:status>           

在任何一种状态下,当请求开始时 - ":status.start" span 将被呈现 并且在请求结束后":status.stop" span 将出现.

将状态应用到组件上也有两种方法:

1.  指定目标 AJAX Containers id“for” 属性的值

2.  在组件上定义 “status” 属性 指定到状态.

如果for省略了 - 状态组件将指向它所在的区域(status component will be pointed to region where it's placed )

a4j:loadBundle

加载一个本地化当前view的资源包,并且暴露它(作为一个Map)为当前请求的请求参数. In difference of original f:loadBundle tag, stored in components tree and activate on ajax/non ajax responses

Table 4.10. a4j:loadBundle attributes

var

在请求范围中使用的变量

basename

资源文件的basename

rendered

如果为false,该组件将不会被显示.

binding

组件绑定.

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

a4j:mediaOutput

用用户指定的资源( images, sounds, video, active objects, applets ...)来创建任何连接元素类型的类.CreateContent属性中指定的方法将把从DataBean中指定的值传递给OutputStream.重要: value中指定的数据bean必须实现Serializable接口.

Table 4.11. a4j:mediaOutput attributes

declare

declare but don't instantiate flag

dir

文本方向.

id

每个组件都应该有个唯一的id. 如果没有指定的话,将会自动产生.

rev

该属性用来描述从通过 href 属性指定的锚点到当前文档的反向链接。该属性值是通过空格分隔的 link 类型()的列表。

mimeType

应用于响应头的mime类型( 'image/jpeg' etc )

style

HTML: 应用在该组件上的CSS.

onmouseover

当滑鼠移动到组件上方时

onkeyup

当使用者按下并放开按键

tabindex

设置不同元素之间获得焦点的顺序

archive

空格分开的URIs

converter

converter

lang

产生该组件标记所使用的语言

createContent

方法调用表达式用来传递资源到 OutputStream. 必须有两个参数 java.io.OutputStream java.lang.Object ( deserialized value of data attribute )

onmouseout

鼠标光标移开元素时发生的事件

element

连接资源的html元素的名字-可能是 <a> <img> <object> <applet> <script> or <link>

rel

该属性描述了从当前文档到通过 href 属性定义的锚点之间的关系。该属性值是通过空格分隔的 link 类型()的列表(译者注: Web 标准开发中,这个通常用来代替 target 属性,配合脚本,用来表示目的窗口)

onmouseup

当释放鼠标按键时发生的事件

cacheable

cacheable

binding

组件绑定.

onmousemove

鼠标光标在元素上移动时发生的事件

expires

expires

coords

定义区域 -- coords
a.
矩形:必须使用四个数字,前两个数字为左上角座标,后两个数字为右下角座标
例:<area shape=rect coords=100,50,200,75 href="URL"
b.
圆形:必须使用三个数字,前两个数字为圆心的座标,最后一个数字为半径长度
例:<area shape=circle coords=85,155,30 href="URL"
c.
任意图形(多边形):将图形之每一转折点座标依序填入
例:<area shape=poly coords=232,70,285,70,300,90,250,90,200,78 href="URL"

title

该组件产生的标记元素的提示文字(当鼠标移动到该组件上面出现的提示文字)

shape

default|rect|circle|poly [CI] 该属性指定一个区域的形状.可能的取值: * default: 指定整个区域. * rect:指定一个矩形区域. * circle: 定义一个圆形区域. * poly: 定义一个多边形区域.

target

 

session

session

charset

该属性指定了通过链接指派的资源的字符编码.

rendered

如果为false,该组件将不会被显示.

codetype

代码的内容类型

classid

指定一个实现

styleClass

HTMLclass属性一样.

accesskey

触发该组件的快捷键

onkeypress

键盘事件,键被按下和松开

ondblclick

HTML: 双击事件

align

bottom|middle|top|left|right 只用元素的对齐方式.不建议使用.

vspace

不建议使用

standby

当载入时显示的文字

lastModified

lastModified

border

不建议使用.

onblur

当元素失去焦点时发生的事件

value

在程序时候计算的值,并且保存在URI(也是cache Key的一部分 ), 在产生是传递到send method. 可以用来更新缓存的值.重要的: 既然序列化的数据保存在URI,避免使用大的对象

hreflang

 

codebase

用于 classid, data, archivebase URI

type

该属性指定链接资源所采用的内容类型。(译者注:例如网页通常为 text/html)

uriAttribute

资源连接属性的名字. ( 'href' for <a>, 'src' for <img> or <script>, etc

onclick

当鼠标点击时发生的事件

onkeydown

键按下时发生的事件

onmousedown

按下鼠标按键时发生的事件

hspace

不建议使用了,

onfocus

使用在表单元素中,当元素获得焦点时发生的事件

 

our Examples page.上有个创建图片的示例. 就像我们前面提到的一样,任何实现了 Serializable Bean 都可以是createContent方法的数据提供者.

 

你可能感兴趣的:(ajax4jsf常用标签的使用)