如何取消/停止在IE浏览器中上传文件

时间:2011-07-18 14:25:06

标签: javascript upload

我有一个包含两种表单的页面。其中一个不可见,包含 input type =“file”。我正在使用隐藏表单上传文件(表单的目标是iframe元素)。我的问题是如何在IE下使用javascript停止/取消上传文件。我试图用JQuery删除隐藏的表单,文件仍在上传。

提前致谢。

3 个答案:

答案 0 :(得分:2)

行。我发现这个网站寻找相同的东西,但这些解决方案对我的方案不起作用。我的表单也有iframe目标,并且想要取消上传。这些解决方案由于某种原因不起作用(IE7)。我希望以下有所帮助。

问题是从servlet发出的指示“文件太大”的响应没有触发目标iframe onload事件。

尝试:

targetIframe.contentWindow.document.open()
targetIframe.contentWindow.document.close()

将iframe onload事件欺骗为触发并自动取消上传。

答案 1 :(得分:1)

您可能需要window.stop()(适用于iframe)的内容。

This old thread报告虽然window.stop()在IE中不起作用,但未记录的window.document.execCommand("Stop")确实如此(至少在IE5中)。

你也可以咨询this StackOverflow page,它的答案基本相同,但提出了一些其他技巧。

答案 2 :(得分:1)

感谢您的回复。 至于我调试了这个案例,我得到了以下结果:) - 无法取消上传。上述方法取消了页面以接收响应,文件正在上传到服务器端。 这是我原型的标记:

<form id="form1" runat="server">
<div>
<asp:ScriptManager runat="server" ID="ScriptManager1"></asp:ScriptManager>

<input type="button" id="button1" value="stopUpload" onclick="stopUpload()"/>
   <script type="text/javascript">

        function stopUpload() {               
            var frame = $get("iframe1");
            frame.contentWindow.document.execCommand("Stop");                
        }

    </script>
</div>
</form>
<form id="form2" enctype="multipart/form-data" action="http://localhost/TestingSite/Default.aspx"
method="POST" target="iframe1">
<input type="submit" />
<input type="file" name="FileUploadTest" id="FileUploadTest"/>
</form>
<iframe id="iframe1" name="iframe1" width="500px" height="500px" ></iframe>