Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как сохранить рапорт?
 
 автор: K   (07.12.2009 в 14:56)   письмо автору
 
 

Исходный файл TEST.HTM
<body>
<div id="report">
<table>
<tr>
<th>Название</th><th>Код</th><th>Позиция</th>
</tr>
</table>
</div>
<input type="button" value="Сохранить рапорт" onclick="saveReport('R17_081')"/>
<script>
function saveReport(name){
var rep=document.getElementById("report").innerHTML;
rep="<head>"+
"<meta http-equiv='Content-Type' content='text/html; charset=windows-1251'/>"+
"<title>"+name+"</title>"+
"</head>"+
"<body>"+rep+"</body>";
var win=open("",name,"");
win.document.open();
win.document.write(rep);
win.document.close();
}
</script>
</body>

Нажимаем кнопку «Сохранить Рапорт». При помощи JavaScript открываем окно, в окно записываем рапорт, затем пытаемся сохранить рапорт на диске. Выбираем в меню браузера «Сохранить как»

Internet Explorer 6 предлагает сохранить рапорт под именем 'R17_081' , но

1. если выбрать сохранить «Веб-страница полностью (*.htm,*.html)», то сохраняет не рапорт, а файл TEST.HTM
2. если выбрать сохранить «Веб-страница, только HTML (*.htm,*.html)», сохраняется рапорт, но не в кодировке «windows-1251»

FireFox предлагает сохранить рапорт не под именем 'R17_081', а под именем TEST.HTM

1. если выбрать сохранить «Веб-страница полностью», то сохраняет рапорнт не в кодировке «windows-1251», а в кодировке UTF-8
2. если выбрать сохранить «Веб-страница, только HTML», то сохраняет не рапорт, а файл TEST.HTM

Если пытается рапорт сохранить обычный пользователь (женщина - оператор), то у него (нее) от всех этих «хитростей» крыша едет.

Как оператору сохранить рапорт в нормальной (windows-1251) кодировке без всяких этих неожиданностей?

  Ответить  
 
 автор: АЯ   (07.12.2009 в 16:26)   письмо автору
 
   для: K   (07.12.2009 в 14:56)
 

>"Если пытается рапорт сохранить обычный пользователь (женщина - оператор), то у него (нее) от всех этих «хитростей» крыша едет."

А чего это у вас "женщина-оператор" пользуется разными браузерами?
Или у вас несколько разных "женщин-операторов" и у каждой - свой вкус, а вы по своей натуре "истинный джентльмен" и никак не можете обязать всех женщин пользоваться ОДНИМ браузером? :-)

Браузерные функциональные "примочки" (в том числе и "Сохранение файла") естественным образом различаются и ВСЕГДА будут различаться (браузеры проектируют РАЗНЫЕ команды разработчиков с разным видением "удобств для пользователя").
Никакое ваше скриптовое решение НЕ СМОЖЕТ изменить функциональные возможности этих "примочек".

Потому выходов у вас два:
1. или творить ПОЛНОСТЬЮ СВОЙ внебраузерный интерфейс
2. или же работать на "одном поле по единым правилам", т.е. всем использовать какой-то один браузер. В последнем случае порекомендовал бы использовать именно браузер MSIE с 4-й версии, ибо в нём реализована возможность СКРИПТОВОГО сохранения файлов на локальном диске пользователя - FileSystemObject.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования