글쓰기 모달 iframe 부모창 새로고침

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
글쓰기 모달 iframe 부모창 새로고침

QA

글쓰기 모달 iframe 부모창 새로고침

본문

글쓰기하면 모달창을 iframe 으로 띄우고 글쓰면

리스트 화면(부모창)을 새로고침 되려고하는데

write_update.skin.php에

아래 처럼 리로드 해도 새로고침이 안되네요 alert 도 안뜨고요

 

 


<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
?>
<script>
    alert('test');
    parent.document.location.reload();
</script>
 

이 질문에 댓글 쓰기 :

답변 2

parent.location.reload(); 로 해보세요.

 

그런데 이럴 경우 주의사항이 있습니다.

본인창이 아이프레임으로 불리워지면 부모창이 있을 경우 부모창이 parent 가 되지만

부모창이 없다면 본인 자신이 동시에 parent 가 되어서 본인 자신을 새로고침하게 됩니다.

거의 광분 새로고침이 된다는 얘기죠.

그래서 이프문을 하나 넣어주어야 하죠. 본인과 parent 의 location.href 가 다르다면 아리는 조건입니다.

여기서 location 을 비교하지 않고 location.href 를 비교하는 것은

전자는 object 이고 후자는 string 이기 때문에 그렇습니다.

예컨대 html5 부터는 엘리먼트 네이밍이 가능해서 <location> 이라는 꺾쇠를 생성하면

바로 <span> 과 똑같은 기능을 가지면서 동시에 type 를 찍어보면 object 를 토해내므로 경로 로케이션과 꺾쇠 로케이션의 비교를 피하기 위해서 location.href 문자열을 비교하는 것이죠.

하지만 파폭에서는 location.href 도 object 로 인식합니다.

따라서 안전을 기하기 위하여. 문자열로 치환해야 해요.

 


<script>
if (String(location.href) != String(parent.location.href)) {
    alert('test');
    parent.location.reload();
}
</script>

<script type="text/javascript">
opener.location.reload(true);
self.close(); // 새창닫기
$(".모달창클래스네임 또는 ID명").remove(); // 모달창 없애기
</script>
이렇게 해보세요...
부모창 새로고침하고 새창은 자동으로 닫게할 것입니다.
$(".모달창클래스네임 또는 ID명").remove();

답변을 작성하시기 전에 로그인 해주세요.
전체 367
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT