использование jQuery / javascript для отображения изображения, созданного сервером - PullRequest
4 голосов
/ 12 июля 2011

У меня есть скрипт, который использует jQuery для POST-данных через AJAX в PHP-скрипт, который использует эти данные для создания динамического изображения JPG.Сценарий PHP возвращает двоичные данные изображения в качестве вывода с помощью команды заголовка PHP image / jpeg (пока все хорошо).

Теперь я хочу отобразить это изображение на клиенте, но я не смогнайти правильное решение для этого еще.Прочитав немного, я понимаю, что возможное решение будет состоять в том, чтобы скрипт PHP кодировал его в base64 и возвращал строку клиенту в качестве URI данных.Однако этого решения будет недостаточно, поскольку оно не поддерживается IE <8 и по-прежнему ограничено 32K-изображениями в IE 8. </p>

На данный момент я записываю изображение во временную папку на сервере ивернуть имя файла клиенту.Однако должен быть другой способ решить это более элегантно.Любой совет, как я могу использовать jQuery / JavaScript для отображения возвращенных данных двоичного изображения в браузере?

Спасибо!

1 Ответ

6 голосов
/ 13 июля 2011

За мой комментарий, вот что я имел в виду.Возможно, это может быть решением для вас, но, конечно, это зависит от вашего кода.

Вы можете динамически создавать тег img и передавать параметры url в ваш php-скрипт вместо того, чтобы делать пост ajax.Приведенный ниже код записывает только то, как будет выглядеть тег img, поскольку у меня нет php-скрипта, который это делает.

Вот скрипка: http://jsfiddle.net/fehays/954zK/

img script param: <input type="text" /><br />
<button>click</button><br />
<div id="imgText"></div>

$(function() {
    $('button').click(function() {         
        $('#imgText').html('&lt;img src="imagecreator.php?param=' + $('input').val() + '" /&gt;');
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...