2014-12-03 2 views
-1

모달 대화 상자에서 동작을 수행 할 때마다 닫히지 만 대화 상자를 다시 열면 메서드가 실행되기 때문에 작업이 수행됩니다. 액션 후에 대화 상자를 닫아 버리는 내 코드의 문제점은 무엇입니까? mantenimientoItems.xhtml대화 상자가 동작 후 닫힘

<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:ui="http://java.sun.com/jsf/facelets" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:p="http://primefaces.org/ui" 
    xmlns:fn="http://java.sun.com/jsp/jstl/functions"> 

    <h:head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    </h:head> 
    <h:body> 

     <h:form id="MantForm"> 
      <h:panelGrid columns="7"> 
       ... 
       <p:inputText id="idClas" 
        value="#{MantenimientoItemsBean.itemsFiltrosVO.clasTitulo}" 
        update=":dialog3" onclick="busClas.show(); return false;"> 

        <p:ajax event="click" 
        listener="#{MantenimientoItemsBean.ValidarTipoBuscador0}"/> 
       </p:inputText> 
       ... 
     </h:form> 

     <p:dialog id="dialog3" appendToBody="true" modal="true" 
      widgetVar="busClas" dynamic="true" width="1400" height="850"> 
      <ui:include src="buscadorClasificador.xhtml" /> 
     </p:dialog> 
    </h:body> 
</ui:composition> 

buscadorClasificador.xhtml

<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<ui:composition xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:ui="http://java.sun.com/jsf/facelets" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:p="http://primefaces.org/ui"> 

    <h:head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    </h:head> 

    <h:body> 

     <h:form id="BClasForm"> 
      ... 
      <tr> 
       <td> 
         <p:commandButton value="Buscar" ajax="false" 
         action="#{MantenimientoItemsBean.BuscarClasificador()}"/> 
       </td> 
      </tr> 
      ... 
     </h:form> 
    </h:body> 
</ui:composition> 

답변

0

당신이 명령 단추의 속성 ajax="false"을 설정

, 그것은 대화 상자를 닫습니다 원인이 포위 양식을 제출합니다. 이 옵션을 선택하지 않으면 양식이 제출되지 않는 ajax="false"을 제거하거나 type="submit" 대신 type="button"을 렌더링하는 속성 type="button"을 추가하여 양식 제출을 다시 피할 수 있습니다.

+0

유이 의미 <버튼형 = "버튼"값 = "Buscar"의 onclick = "# {MantenimientoItemsBean.BuscarClasificador()}"> 잘 Buscar – Mario

+0

"false"action = "# MantenimientoItemsBean.BuscarClasificador()}"type = "button"/> 또는 ajax를 제거하므로

+0

내가 코드를 시도 할 때 버튼이 작동하지 않는다. – Mario

관련 문제