iframe에서 상위 창의 요소에 액세스
전화 할 수있는 페이지가 있습니다 parent.php
. 이 페이지 iframe
에는 제출 양식이 있고 그 밖에 ID가 "target"인 div가 있습니다. iframe에서 양식을 제출하고 성공하면 대상 div를 새로 고칠 수 있습니까? 새 페이지를로드하거나 뭔가?
편집 : 대상 div는 상위 페이지에 있으므로 기본적으로 iframe 외부에서 부모에 대한 jQuery 호출을 예를 들어 볼 수 있는지 질문합니다. 그리고 어떻게 보일까요?
편집 2 : 그래서 이것은 내 jquery 코드가 지금 어떻게 생겼는지입니다. iframe 페이지에 있습니다. div #target은 parent.php에 있습니다.
$(;"form[name=my_form]").submit(function(e){
e.preventDefault;
window.parent.document.getElementById('#target');
$("#target").load("mypage.php", function() {
$('form[name=my_form]').submit();
});
})
스크립트가 활성 상태인지 여부는 양식이 성공적으로 제출되지만 대상에는 아무 일도 일어나지 않습니다.
편집 3 :
이제 iframe 내의 링크에서 상위 페이지를 호출하려고합니다. 그리고 거기에서도 성공하지 못했습니다.
<a href="javascript:window.parent.getElementById('#target').load('mypage.php');">Link</a>
나는 당신이 그것을 얻기 위해 당신의 호출에서 "#"때문에 당신의 요소를 찾지 못하는 것이 문제라고 생각한다.
window.parent.document.getElementById('#target');
jquery를 사용하는 경우 # 만 필요합니다. 여기에 있어야합니다.
window.parent.document.getElementById('target');
다음 window.parent
과 같이 사용하여 iframe 내에서 상위 창의 요소에 액세스 할 수 있습니다 .
// using jquery
window.parent.$("#element_id");
다음과 같습니다.
// pure javascript
window.parent.document.getElementById("element_id");
중첩 된 iframe이 두 개 이상 있고 최상위 iframe에 액세스하려는 경우 다음 window.top
과 같이 사용할 수 있습니다 .
// using jquery
window.top.$("#element_id");
다음과 같습니다.
// pure javascript
window.top.document.getElementById("element_id");
iframe 안에 아래 js가 있고 ajax를 사용하여 양식을 제출하십시오.
$(function(){
$("form").submit(e){
e.preventDefault();
//Use ajax to submit the form
$.ajax({
url: this.action,
data: $(this).serialize(),
success: function(){
window.parent.$("#target").load("urlOfThePageToLoad");
});
});
});
});
iframe에서 window.parent를 사용할 수 있다고 생각합니다. window.parent는 부모 페이지의 창 개체를 반환하므로 다음과 같이 할 수 있습니다.
window.parent.document.getElementById('yourdiv');
그런 다음 해당 div로 원하는 것을 수행하십시오.
참고 URL : https://stackoverflow.com/questions/7027799/access-elements-of-parent-window-from-iframe
'programing' 카테고리의 다른 글
onAnimationEnd에서 Android 애니메이션이 완료되지 않았습니다. (0) | 2020.11.17 |
---|---|
Matplotlib 그림 facecolor (배경색) (0) | 2020.11.17 |
로컬 네트워크에서 GAE dev 앱 서버에 액세스 할 수있는 방법이 있습니까? (0) | 2020.11.17 |
Selenium 체크 박스 속성 "선택됨" (0) | 2020.11.17 |
PHP : 입력이 유효한 숫자인지 확인하는 가장 좋은 방법은 무엇입니까? (0) | 2020.11.17 |