ajax模式和参数<rich:richtooltip>中的<rich:richtooltip>

时间:2012-02-22 10:26:00

标签: jsf richfaces

我是JSF的新手,所以我的问题很可能是愚蠢的; - )

我必须使用“mode = ajax”创建一个富:toolTip,我需要向我的Bean发送一个参数,以便能够找到工具提示中显示的数据。

我试过这样做,但它不起作用。 这是我的代码:

<h:outputText value="#{resultPrestationBean.mainPanelViewOne.data}" id="anId">
  <rich:tooltip mode="ajax" showDelay="250">
    <a4j:actionparam id="test2" value="MyValue" assignTo="#{resultPrestationBean.test2}"/>
    <f:facet name="defaultContent">
      <f:verbatim>Loading...</f:verbatim>
    </f:facet>
    <h:outputText value="info #{resultPrestationBean.test}" />
  </rich:tooltip>
</h:outputText>

这是我的ResultPrestationBean中的代码

public String getTest() {
  return "Blabla " + this.test2;
}
public void setTest2(String test2) {
  this.test2 = test2;
}
public void test2(String test2) {
  this.test2 = test2;
}

我的工具提示中的结果始终是“info Blabla null” 如果我在Firebug中使用Net面板,我会在POST中看到参数...

你能解释一下吗?

1 个答案:

答案 0 :(得分:0)

我不相信你可以在没有动作的情况下发送动作片。我尝试了这个,并通过创建a4j:jsFunction并将参数放入其中来使其工作。然后在工具提示的onshow事件上调用此jsFunction。顺便说一句,我正在使用richfaces 4。

<rich:tooltip id="tool1" mode="ajax" showDelay="500" layout="block" followMouse="false" onshow="send();">
    <h:outputText id="tool" value="New Entry #{timesheetHome.rowNum}" />
</rich:tooltip>

<a:jsFunction name="send" render="tool">
    <a:param name="x" value="5" assignTo="#{timesheetHome.rowNum}"></a:param>
</a:jsFunction>