Я работаю над приложением ASP.NET.В настоящее время, когда пользователь нажимает «Сохранить» на элементе, мы отключаем кнопку «Сохранить», меняем его текст на «Сохранение ...» и так далее.Это работает нормально, потому что кнопка вызывает обратную передачу, что приводит к загрузке новой страницы, на которой кнопка Сохранить больше не отключена.
Теперь мы хотим применить это к другим действиям: Опубликовать (мало чем отличаетсяиз Сохранить), Импорт (опять же, очень похоже на Сохранить, но на основе данных, загруженных пользователем на предыдущем шаге), Экспорт (загрузка файла XML пользователю) и т. д.
Экспорт вызывает у меня проблемы -кнопка остается отключенной.Я думаю, это потому, что сервер отправляет обратно XML-файл, а не новую веб-страницу, и поэтому браузер просто отображает ту же страницу.
Код на стороне сервера соответствует строчке
Response.Clear();
Response.BufferOutput = true;
Response.ContentType = "text/xml";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + whatever);
[push file contents into Response.OutputStream]
Response.End();
[Не знаю, хороший это код или нет - он не мой - но он выполняет свою работу:)]
В общем, я хотел бы знать либо:
- способ заставить сервер отправить новую страницу обратно в ответ, а также XML, таким образом повторно включить кнопку таким же образом, как это делают другие страницы, или
- способ получитьбраузер / JS для повторного включения кнопки после отправки файла.