Как я могу отменить / остановить загрузку файла в IE javascript - PullRequest
3 голосов
/ 18 июля 2011

У меня есть страница с двумя формами. Один из них не виден и содержит input type = "file" . Я загружаю файл со скрытой формой (целью формы является элемент iframe). У меня вопрос, как остановить / отменить загрузку файла с помощью JavaScript под IE. Я попытался удалить скрытую форму с помощью JQuery, и файл все еще загружается.

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 01 октября 2012

OK. Я обнаружил, что этот сайт ищет то же самое, но эти решения не работают для моего сценария. У меня тоже есть цель iframe для моей формы, и я хотел отменить загрузку. Эти решения почему-то не работали (IE7). Я надеюсь, что следующее поможет.

Проблема заключалась в том, что ответ, отправленный сервлетом с указанием «файл слишком большой», не вызывал целевое событие загрузки iframe.

Попытка:

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

Это обмануло событие загрузки iframe в запуск и автоматически отменило загрузку.

1 голос
/ 20 июля 2011

Спасибо за ответы. Насколько я отладил этот случай, я получил следующий результат :) - отменить загрузку невозможно. Приведенные выше методы отменили страницу для получения ответа, и файл загружается на сервер. Вот наценка моего прототипа:

<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>
1 голос
/ 18 июля 2011

Возможно, вы хотите что-то вроде window.stop() (применено к iframe).

Этот старый поток сообщает, что хотя window.stop() не работает в IE,недокументированное window.document.execCommand("Stop") делает (по крайней мере, в IE5).

Вы также можете обратиться к этой странице StackOverflow , которая в основном дает тот же ответ, хотя предлагается несколько других приемов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...