【发布时间】:2019-08-23 21:32:20
【问题描述】:
我一直在使用 Chrome 编写我的第一个 web 应用程序(因为简洁的内置检查工具)并且一切都很好,直到我在 IE11 中进行测试。
它基本上是一个用于上传文件的表单和 iframe(但在 sn-p 中,我只是专注于通过删减所有内容来最小化行为的再现)。
行为是在 Chrome 中我单击“提交”并且表单触发 iframe onload 事件并运行一些代码。在 IE11 中,onload 在页面加载时触发,当点击提交按钮时,它会触发两次。
似乎我应该使用其他一些事件处理程序,但不确定要捕获什么。我尝试了 onsubmit,但它什么也没做。
来自 html 块的代码:
<form enctype = "multipart/form-data" target="upload-iframe">
<input type = "submit" />
</form>
<iframe name="upload-iframe" id="myFrame" hidden="hidden"></iframe>
<script type="text/javascript">
var iframe = document.getElementById('myFrame');
iframe.onload = function() {
alert("I'm doing something");
}
</script>
谢谢!
【问题讨论】:
-
注意:在提交时,从我的本地主机运行时它会触发两次,但是当我在 StackOverflow 工具中单击提交时,我看到它只会触发一次。它仍然会在 SO 工具中的页面加载时触发。
标签: html forms iframe internet-explorer-11