首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打开<p:dialog> -JFS2.0时空变量

打开<p:dialog> -JFS2.0时空变量
EN

Stack Overflow用户
提问于 2013-11-15 01:33:52
回答 1查看 1.5K关注 0票数 2

你好吗?

也许现在是个新手的问题。现在我有一个输入和一个“提交”按钮在表单中。当我单击submit时,它不会调用任何方法,这只会打开一个<p:dialog>。打开此对话框时,未设置输入中的变量,因此我的另一个输入没有显示任何内容。

看到要理解的图像:

点击“提交”(Adicionar):

第二个图像必须显示与第一个输入完全相同的值,但正如您所看到的,它只显示了一个空输入。

现在让我们来看我的密码。

,这是我的JSF:

代码语言:javascript
复制
<h:form id="inserirDisciplina">

    <h:inputText styleClass="form-control" id="disciplina" value="#{cursoMBean.nome}"
      valueChangeListener="#{cursoMBean.atualizarListagemPesquisa}">
      // atualizarListagemPesquisa just update the arraylist to be shown in dataTable

        <f:ajax event="keyup" render=":meuForm:minhaTabela" />
    </h:inputText>

    <h:commandButton value="Adicionar" styleClass="btn btn-md btn-success">
        <p:ajax event="click" update=":meuForm:display" render=":meuForm:dialog" oncomplete="PF('insert').show();" onerror="alert('erro');" />
    </h:commandButton>

    <p:dialog id="dialog" header="Inserir Curso" widgetVar="insert" resizable="false" modal="true" width="600" height="500" hideEffect="clip" closeOnEscape="true" focus="enviar">
            <h:panelGrid id="display" styleClass="col-lg-10 center">
                 <label for="nome">Nome:</label>
                 <p:inputText styleClass="form-control adicionar" id="nome" value="#{cursoMBean.nome}" />
             </h:panelGrid>

                ...

MBean:

代码语言:javascript
复制
private String nome;

public String getNome() {
    return nome;
}

public void setNome(String nome) {
    this.nome = nome;
}

编辑(新视图):

代码语言:javascript
复制
<h:form id="inserirDisciplina">
    <div class="form-group">
        <div class="col-md-10">
            <h:inputText styleClass="form-control" id="disciplina" value="#{cursoMBean.nome}" valueChangeListener="#{cursoMBean.atualizarListagemPesquisa}">
                <f:ajax event="keyup" render=":meuForm:minhaTabela" />
            </h:inputText>
        </div>
        <div class="col-md-2">
            <h:commandButton value="Adicionar" styleClass="btn btn-md btn-success" process="disciplina" partialSubmit="true">
                <p:ajax event="click" update=":meuForm:display" render=":meuForm:dialog" partialSubmit="true" process="disciplina" oncomplete="PF('insert').show();" onerror="alert('erro');" />
            </h:commandButton>
        </div>
    </div>
</h:form>

<p:messages autoUpdate="true" />

<p:dialog id="dialog" header="Inserir Curso" widgetVar="insert"
                resizable="false" modal="true" width="600" height="500"
                hideEffect="clip" closeOnEscape="true">

<h:form>
    <h:panelGrid id="display" styleClass="col-lg-10 center" style="margin-top: 10px; margin-bottom: 15px;">
        <label for="nome">Nome:</label>
        <p:inputText styleClass="form-control adicionar" id="nome" value="#{cursoMBean.nome}">

        </p:inputText>
    </h:panelGrid>

    <h:panelGrid styleClass="col-lg-10 center">
        <p:columnGroup>
            <label for="disciplinas">Disciplinas do Curso:</label>
            <h:selectManyCheckbox style="margin-bottom: 40px;" id="disciplinas" value="#{cursoMBean.listaDisciplinasDoCurso}" converter="omnifaces.SelectItemsConverter">
                <f:selectItems value="#{cursoMBean.listaTodasDisciplinas}" var="disciplina" itemValue="#{disciplina}" itemLabel="#{disciplina.nome}" />
            </h:selectManyCheckbox>
        </p:columnGroup>
    </h:panelGrid>

    <h:panelGrid styleClass="col-lg-10 center">
        <p:columnGroup>
            <h:commandButton id="enviar" styleClass="btn btn-lg btn-success pull-right" value="Adicionar" action="#{cursoMBean.cadastrar}">
                    <f:ajax event="click" execute="@form" onevent="insert.hide()" render=":meuForm:minhaTabela" listener="#{cursoMBean.cadastrar}" />
            </h:commandButton>
        </p:columnGroup>
    </h:panelGrid>
</h:form>
</p:dialog>

我做错什么了?

EN

回答 1

Stack Overflow用户

发布于 2013-11-15 10:12:06

为按钮尝试以下代码:

代码语言:javascript
复制
<p:commandButton value="Adicionar" styleClass="btn btn-md btn-success"
   process="disciplina" partialSubmit="true" update=":inserirDisciplina:display"
   oncomplete="insert.show();" onerror="alert('erro');">
</p:commandButton>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19991911

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档