js iframe窗口关闭与提交
时间: 2023-07-13 17:05:08 浏览: 57
可以使用以下代码来关闭 iframe 窗口:
```javascript
parent.document.getElementById('iframe_id').style.display = 'none';
```
其中,`iframe_id` 是你的 iframe 元素的 ID。
如果你想在关闭 iframe 窗口时提交表单,可以在关闭窗口前先调用表单的 submit() 方法,如下所示:
```javascript
// 获取表单元素
var form = parent.document.getElementById('form_id');
// 提交表单
form.submit();
// 关闭 iframe 窗口
parent.document.getElementById('iframe_id').style.display = 'none';
```
其中,`form_id` 是你的表单元素的 ID。
相关问题
子窗口iframe表单提交后关闭窗口
子窗口iframe表单提交后关闭窗口的方法是通过父窗口的JavaScript代码来实现。可以使用以下步骤:
1. 在子窗口的表单中,添加一个提交事件的监听器,当表单提交时执行一段JavaScript代码。
2. 在提交事件的监听器中,使用`window.parent`来访问父窗口的JavaScript代码。
3. 使用`window.parent`调用父窗口中的关闭窗口方法,例如`window.parent.closeWindow()`。
下面是一个示例代码:
在子窗口的HTML文件中:
```
<form id="myForm" action="submit.html" method="post">
<!-- form fields here -->
<button type="submit">提交</button>
</form>
<script>
document.getElementById('myForm').addEventListener('submit', function(e) {
e.preventDefault(); // 阻止表单提交的默认行为
// 调用父窗口的关闭窗口方法
window.parent.closeWindow();
});
</script>
```
在父窗口的JavaScript中:
```
function closeWindow() {
// 关闭子窗口
// 可以使用window.close()方法来关闭窗口,但是需要注意该方法在某些浏览器中可能会被禁用
// 为了更好的兼容性,可以使用以下方法:
var iframe = document.getElementById('mainFrame');
iframe.parentNode.removeChild(iframe);
}
```
请注意,上述代码中的`mainFrame`是父窗口中iframe的id,你可能需要根据实际情况进行修改。另外,由于安全限制,关闭窗口的功能可能在某些浏览器中受到限制。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [javascript iframe编程相关代码](https://download.csdn.net/download/weixin_38632046/14816473)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [111 js iframe表单提交后自动关闭 &](https://blog.csdn.net/fancivez/article/details/49704945)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
iframe窗口关闭事件
可以通过监听 iframe 的 unload 事件来实现 iframe 窗口关闭时的响应操作。可以在父页面中使用以下代码:
```javascript
var iframe = document.getElementById('myIframe');
iframe.addEventListener('unload', function() {
// 在这里执行关闭窗口时的操作
});
```
需要注意的是,在监听 unload 事件时,由于浏览器的安全限制,无法访问 iframe 内部的内容,因此只能执行一些基本的操作,如保存数据或者显示提示信息。如果需要在关闭 iframe 窗口时执行更多的操作,可以考虑在 iframe 内部添加一个关闭按钮,通过按钮点击事件来触发关闭操作。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)