【问题标题】:RichFaces ajax don't workRichFaces ajax 不起作用
【发布时间】:2013-07-06 16:40:04
【问题描述】:

我正在尝试使用 commandButton 展示中的示例。

但是当我这样做时:

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:rich="http://richfaces.org/rich"
    xmlns:a4j="http://richfaces.org/a4j"
    xmlns:f="http://java.sun.com/jsf/core">

    <h:head>
        <title>Rich Teste</title>
    </h:head>
    <h:body>
        <h:outputStylesheet>
            form {
                background: #fee3ad
            }
        </h:outputStylesheet>
        <h:form id="iddoform" >
            <h:panelGrid columns="3">
                <h:outputText value="Nome:" />
                <h:inputText value="#{testeBean.nome}"/>
                <a4j:commandButton  value="Teste" render="iddoform:out" execute="@form" />
            </h:panelGrid>
           <br />
           <a4j:outputPanel id="out">
                <h:outputText value="Hello #{testeBean.nome} !"/>
           </a4j:outputPanel>
        </h:form>
        <br />
        <a4j:log /> 
    </h:body>
    </html>

没用,所以改成这样:

  <html xmlns="http://www.w3.org/1999/xhtml"
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:rich="http://richfaces.org/rich"
        xmlns:a4j="http://richfaces.org/a4j"
        xmlns:f="http://java.sun.com/jsf/core">

    <h:outputStylesheet>
        form {
            background: #fee3ad
        }
    </h:outputStylesheet>

    <h:form id="iddoform">
        <h:panelGrid columns="3">
            <h:outputText value="Nome:" />
            <h:inputText value="#{testeBean.nome}" />
            <a4j:commandButton value="Teste"
                render="iddoform:out" execute="@form" />
        </h:panelGrid>
        <br />
        <a4j:outputPanel id="out">
            <h:outputText value="Hello #{testeBean.nome} !" />
        </a4j:outputPanel>
    </h:form>
    </html>
enter code here

而且它有效!

更改是从 html 中删除了头部和主体。

我的问题是:“为什么不使用 head 和 body 标签?”。

PS:我尝试使用 render="iddoform:out", :iddoform:out and out;我也在尝试立即为真,但不工作。

【问题讨论】:

  • 请在此处发布代码而不是链接。如果链接死了,您的问题将毫无用处。
  • 谢谢塞尔吉奥,下次我会发布代码。
  • git 上的测试示例:github.com/levymoreira/RichTeste case 每个人都想测试。

标签: ajax richfaces


【解决方案1】:

当您说“它不起作用”时,您必须说明您希望它如何起作用。

不是&lt;h:head&gt;&lt;h:body&gt; 使它不起作用,而是immediate="true"。它使按钮动作在设置名称之前被处理。您在第二个示例中没有它,这就是它起作用的原因。

另外你不用iddoform:out指向面板,out就够了,引擎会找到的。

【讨论】:

  • 嗨 Makhiel,我尝试不使用即时,使用 'iddoform:out'、':iddoform:out' 和 'out' 但只有在我移除头部和身体时才有效。如果你下载你看到的 github 项目,github.com/levymoreira/RichTeste 中的示例可以工作,但如果你添加 head 和 body 则不工作。谢谢你。 PS:我修改了原文,以提高理解。
  • @LevyMoreira 当我复制第一个示例时,它对我有用。什么不适合你?文字没有刷新吗?
  • 是的,他工作,现在添加头部和身体标签,他不再工作了。
猜你喜欢
  • 2023-03-27
  • 2014-03-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-10
相关资源
最近更新 更多