Carregar PopUp pelo "a4j:commandButton" - URGENTE

7 respostas
rrmartins

Galera, boa noite

sou novo com JSF, estou com uma grande dificuldade.
Tenho um botao que precisa abrir uma PopUp na tela.

Segue abaixo o codigo:

<a4j:commandButton onclick="carregarModalConsultaPosto();" reRender="layoutPanel2" image="/resources/imagens/add16x16_2.png"
                                           style="border-width: 0px; height: 16px; left: 12px; top: 432px; position: absolute; width: 16px"
                                           title="Adicionar Novo item" value="Submit" />

Galerinha preciso de ajudar urgente…

7 Respostas

rrmartins

ngm?

surfzera

cara… tem como vc colocar seu javascript da chamada do metodo ?

rrmartins

esta ai:

<a4j:jsFunction action="#{cadastro$restricaoFrota$cadastroRestricaoFrota.linkConsulta_action}" name="carregarModalConsultaPosto" oncomplete="javascript:modalConsulta('../../faces/cadastro/restricaoFrota/RestricaoFrotaPopUp.jsp','','',consultaTextoPosto)">
                            <a4j:actionparam
                                assignTo="#{cadastro$restricaoFrota$cadastroRestricaoFrota.sessionBeanManterRestricaoFrota.idPosicaoEstSelecionada}" name="idPosicaoSelecionada"/>
                        </a4j:jsFunction>

o CarregarModal:

function modalConsulta(pag,idCodRetorno,idDescRetorno,funAlterClose,timeout) {
    this.pagina = pag;
    this.idInputRetorno = idCodRetorno;
    this.descricaoInputRetorno = idDescRetorno;
    this.funAlterClose = funAlterClose;
    this.timeoutFunction = timeout;
    var alt = 300;
    var larg = 750;
    var win = new Window(
    {
        className: "alphacube",
        id: ((new Date().getTime())+"protConsSet"),
        title: "",
        width:larg,
        height:alt,
        url: pagina,
        draggable:false
    });
    win.setDestroyOnClose();
    win.showCenter(true);
    //if (Windows) {
    Windows.addObserver(myObserver);
//}
}
surfzera

voce pode fazer assim:

<a4j:commandLink ajaxSingle="true"  oncomplete="javascript:Richfaces.showModalPanel('panel');">
                            Meu Botão
</a4j:commandLink>
<a4j:include id="painelNovo" viewId="painel.xhtml" ajaxRendered="true"/>

em outro arquivo chamado painel.xhtml

<f:subview id="subNovo">

                <a4j:form id="frmNovo">

                    <!-- Modal Painel Carga Memoria -->
                    <rich:modalPanel id="panel" autosized="false" keepVisualState="false" resizeable="false" width="400" height="150">

                        <f:facet name="header">
                            <h:outputText value="Novo"/>
                        </f:facet>

                        <f:facet name="controls">
                            <span style="cursor:pointer" onclick="javascript:Richfaces.hideModalPanel('panel')">X</span>
                        </f:facet>

                    </rich:modalPanel>

                </a4j:form>

            </f:subview>
surfzera

dessa forma que eu coloquei vc não precisa usar o javascript

surfzera

voce tambem pode fazer assim

<!-- botão de ajuda -->
<a4j:commandLink id="itemDialog">
       <h:graphicImage value="/img/help.gif"/>
</a4j:commandLink>
<!-- componente que trata o momento em que o modalPanel deve ser exibido -->
<rich:componentControl for="pnlDialog" attachTo="itemDialog" operation="show" event="onclick"/>

                <!-- ModalPanel -->
                <rich:modalPanel id="pnlDialog" width="400" height="450">
                    <f:facet name="header">
                        <h:panelGroup>
                            <h:outputText value="Público Alvo"></h:outputText>
                        </h:panelGroup>
                    </f:facet>
                    <f:facet name="controls">
                        <h:panelGroup>
                            <h:graphicImage value="/img/close.png" id="fecharDialog"/>
                            <rich:componentControl for="pnlDialog" attachTo="fecharDialog" operation="hide" event="onclick"/>
                        </h:panelGroup>
                    </f:facet>

</rich:modalPanel>
surfzera

acho que vai ajudar visto que você está usando o richfaces …

Criado 10 de fevereiro de 2011
Ultima resposta 10 de fev. de 2011
Respostas 7
Participantes 2