【问题标题】:Execute other form field value in JSF ajax在 JSF ajax 中执行其他表单字段值
【发布时间】:2012-09-07 08:46:31
【问题描述】:

考虑以下 JSF 2.x 标记:

<h:form id="form1">

    <h:inputText id="input" value="#{testBacking.input}"/> 

</h:form>


<h:form id="form2">

    <h:commandButton value="go" action="#{testBacking.go()}">
        <f:ajax execute="@all" render="output"/>
    </h:commandButton>               
    <h:outputText id="output" value="#{testBacking.input}"/>

</h:form>

动作方法如下:

public void go() {
        System.out.println("go() is called");
         System.out.println("input: "+ input);
    }

单击按钮时输入值未提交给服务器。

是否有任何方法可以将输入值提交给服务器(同时保持输入以不同的形式)?

如果只能提交同一个表单的字段,那么下面这两种有什么区别呢?

<f:ajax execute="@all" render="output"/>
<f:ajax execute="@form" render="output"/>

【问题讨论】:

    标签: forms jsf submit


    【解决方案1】:

    快速搜索jsf execute=@all vs execute=@form 会产生一些结果:

    本质上,JSF 处理工作正常,但 HTML 只发送包含 ajax 的表单(我怀疑 HTML 为每个表单指定了单独的请求)。

    【讨论】:

    • 基本上ajax标签里的@all参数好像没什么意义。
    猜你喜欢
    • 2020-11-01
    • 2013-07-12
    • 2016-07-16
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-31
    相关资源
    最近更新 更多