2013-09-30 3 views
2

조건에 따라 열 때 열린 팝업을 닫는 방법.jquery에서 팝업을 닫는 방법

매우 이상하게 보입니다 만, 조건에 따라 조건이 맞는다면 팝업이 자동으로 닫혀 야합니다. 어떻게해야합니까?

.dialog("close")document.ready 이벤트로 반송했지만 작동하지 않습니다. 어떤 생각? 내가 문제가 발견

UPDATE 실제로 가까이 있지만 다시 다시 열 준비가 이벤트를 완료 한 후 거기 팝업입니다. 어떤 도움이 필요합니까?

+0

조건을 평가하는 코드는 팝업 또는 상위 창에 있습니까? –

+0

@ThierryJ. 그것은 팝업에 .. – commit

+0

+1 >> 당신의 업데이 트가 말도 안되는 문장이지만, 내 오류의 해결책으로 나를 이끌었다 :) –

답변

0
if (condition){  
    $('dialog id').dialog('close');  
} 
+0

그것은 작동하지 않습니다 – commit

0

이 팝업 창에서 작업을 수행해야합니다

<script> 
    $(function() { 
     if (condition) { 
      window.close(); 
     } 
    }); 
</script> 
+2

남자 나는 창문을 닫고 싶지 않아, jquery를 닫고 싶다 대화 상자. – commit

2

이것은 이전 게시물이지만, 다른 넣다 사람이이 문제에 실행, 나는 JQuery와 팝업와 비슷한 문제가 있었다 그 심지어 직장 동료의 코드에서 적응

$("#popup").dialog('close');

솔루션으로 닫을 것, 스크립트 초의 상단에 제어 변수를 가지고 있었다 팝업을 열면 1로 설정하고 닫으려면 0으로 재설정하십시오.

<script> 
<code> 
    var $l = jQuery.noConflict(); 
    var cntDialog = 0; 
</code> 

function pageLoad(sender,args) { 
    $l(function() { 
    if (cntDialog == 0) { 
     RemoveDialog(); 
    }); 
    } 

function initializeDialog(){ 
    $l("#popup").dialog({ 
    ... 
    close: (function (sender,event) { 
    RemoveDialog(); 
    }) 
});} 

function RemoveDialog() { 
    cntDialog = 0; 
    $l("#popup").remove(); 
} 
</script> 

당신은 서버 측 스크립트에서 몇 가지 태그를 추가 할 필요가

0

희망이 도움 당신은 이벤트 리스너를 설정해야합니다 : 또한,이 같은 (아직도 자바 스크립트) pageLoad에 HTML에서 팝업을 제거 클라이언트 쪽에서 팝업 닫기를 닫습니다. 서버에서

parent.postMessage("CLOSE","*"); 

:

당신이 뭔가를 설정해야합니다 의미합니다.

및 설정 리스너 클라이언트 측과 같은 :

var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent"; 
var eventer = window[eventMethod]; 
var messageEvent = eventMethod == "attachEvent" ? "onmessage" : "message"; 

내가 이것을 확인하는 시간이 없어 자식 창

eventer(messageEvent,function(e) { 
    var key = e.message ? "message" : "data"; 
     var data = e[key]; 
    },false); 

에서 메시지 듣기 //. 희망이 당신을 도울 수 있습니다.

아니면 다음 URL을 통해 이동 :

Html5 - Cross Browser Iframe postmessage - child to parent?

: 내 주어진 코드는 URL에서

https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage

http://nyamsprod.com/blog/2012/introduction-to-window-postmessage/

http://benalman.com/code/projects/jquery-postmessage/examples/iframe/

입니다

청중 내부에 dilogue close code를 추가 할 수 있습니다.

감사

간단한 솔루션
1

하나는 $ ('# 대화-근접 btn을'). 트리거 ('클릭') 당신이 대화 상자 닫기 버튼을 가리 곳이 될 수 있습니다.

0

$('.my-modal').hide()은 활성 모달을 종료합니다.

관련 문제