2010-09-15 2 views
0

Я пытаюсь показать jquery load() динамически созданный PDF, созданный PHP с FPDFlib на div, но то, что я получаю, является вареньем символов. Есть ли способ разрешить это?php-jquery-pdf загрузить pdf на div

заранее спасибо

Я пытался исправить мой код таким образом, но продолжает показывать варенье

$.post("./php/stampa_login.php", 
    {piatta:'<? echo $_POST["piatta"] ?>'}, 
    function(data){ 
     $("#stampa_content").load("./temp/login.pdf") 
}); 

Ciao

час.

+0

мы можем увидеть код, пожалуйста, похоже, выходной вопрос. – RobertPitt

ответ

2

Это кажется правильным. Загрузка jQuery() извлекает URL через AJAX; если этот URL-адрес является PDF-файлом, он отображается как «варенье символов» в браузере, так как PDF и HTML не совместимы вообще, форматы совершенно разные.

Возможно, вы хотите открыть PDF как <object>, но тогда вы надеетесь, что у пользователя есть какой-либо плагин PDF, установленный в браузере. Давайте сделаем шаг назад: чего вы пытаетесь достичь здесь, показывая PDF?

+0

Я загружаю страницу JQuery php, которая генерирует PDF; Я полагаю, что это проблема, может быть, я могу разрешить amexing почтового запроса на php-страницу, которая генерирует PDF, сохраняет его в локальной и после загрузки для отображения ... – haltman

0

ya, похоже, выпуск выпуск. Вы пробовали функцию заголовка, чтобы выводить ее правильно? попробуйте для правильного вывода или вместо открытия pdf в div, просто обновите ссылку pdf там

+0

Я использую эти заголовки: header ('Accept-Ranges: bytes «); \t \t \t header ("Content-type: application/pdf"); – haltman

+0

Я не думаю, что это сработает. Вам нужно будет обновить div с помощью ссылки для вновь созданного pdf. –

1

Вы можете создать пустой тег embed и указать атрибут src в качестве ссылки. в вашей функции обратного вызова. Это полностью загрузит файл PDF.

$("#embed_tag_id").attr("src", "./temp/login.pdf"); 
+0

Я должен попробовать это решение благодаря подсказке! – haltman

1

Вместо использования $ ('# whatever'). Load();

Вы хотите что-то вроде этого:

$("#stampa_content").html($('<object>', { data : "./temp/login.pdf", type : "application/pdf", width : 800, height : 600 }); 

Что это будет делать это вместо того, чтобы пытаться загрузить содержимое PDF в DIV, он будет создать блок, который запустит ваш читатель PDF (например, Adobe Reader), который затем загрузит сам PDF и отобразит его.

В качестве альтернативы, вы могли бы пойти на что-то вроде этого: http://dev.funkynerd.com/projects/jquery-pdfdoc/wiki

Смежные вопросы