Расположение контента -игнорируется в IE 9 и Firefox 13

Я пытаюсь динамически создать встроенный PDF-файл, который, когда пользователь решит сохранить его, запрашивает мое собственное имя файла. Согласно документации , атрибут saveasnameдолжен делать то, что я хочу.

(format="PDF" only) The filename that appears in the SaveAs dialog when a user saves a PDF file written to the browser.

Однако как в IE 9, так и в Firefox 13.0.1 происходит то, что имя файла, отображаемое в диалоговом окне «Сохранить как», совпадает с моим шаблоном CF, но с расширением PDF. (Другими словами, мой код находится в makepdf.cfmи SaveAs предлагает мне сохранить makepdf.pdf. )Однако в Chrome все работает отлично. (Все в Windows 7.)

Вот мой код для создания PDF:


Если я явно объявлю расположение и тип контента, например




  • Chrome сообщает мне, что «Content -Disposition» был объявлен дважды
  • Firefox сообщает мне, что файл PDF поврежден
  • IE просто игнорирует его (и по-прежнему не показывает правильное имя файла)

Если я просто полагаюсь на заголовок




Я получаю то же поведение, что и первый фрагмент кода.

Я знаю, как заставить браузер запрашивать загрузку, а не отображать встроенный, и тогда все работает, как и ожидалось, но это не желаемое поведение.

Мне нужно использовать время и дату в именах файлов, а конечные пользователи недостаточно сообразительны, чтобы не перезаписать свои файлы (, если они захотят их сохранить ).

Есть ли что-то, что я упускаю, что заставит IE и Firefox делать то, что они должны делать? Какие другие браузеры будут делать это? Мобильное сафари?

5
задан ale 18 July 2012 в 17:56
поделиться