java丰富:效果使用问题
我想在我的应用程序中使用带有JSF元素的rich:effect
,但在AJAX方面有点问题
如下所示,我有一个h:outputText
元素,它有一个JSF引用值(#{MyBacking.sysMsg}
),在用户体验应用程序时会发生变化。由于rich:effect
元素使用javascript事件,指定下面的代码不起作用
我曾尝试使用a4j:support对h:outputText
元素进行ajaxify化,但这似乎也被忽略了。用户不会点击任何按钮——sysMsg变量在其他地方更新,我想向观众强调一个更改
代码如下:
<h:outputText value="#{MyBacking.sysMsg}" id="sysMsg" style="#{MyBacking.colour}" />
<rich:effect event="onchange" type="Highlight" params="duration:0.8" />
<rich:effect event="onchange" for="sysMsg" type="Appear" params="delay:3.0,duration:0.5" />
我认为肯定会有一个简单的答案,但我似乎无法在脑海中或网上找到答案。有人能帮我吗
# 1 楼答案
要根据服务器端的更改更新文本,必须使用
<a4j:poll>
或<a4j:push>
例如:
当然,这将每秒都高亮显示,而不仅仅是在值发生变化时。要仅在更改时突出显示,最好使用自定义javascript/jquery函数,记住值并在更改时调用highlight
以下是一个可能的解决方案:
以下是示例:Exadel Demo和文档:rich:effecta4j:poll