jQuery Thickbox с обработчиком изображений .ASHX - показывает мусор

Я использую обработчик .ASHX для возврата изображений из моего приложения ASP.NET. Когда я использую браузер для прямого доступа к URL-адресу (пример):

  http://localhost/myapp/GetImage.ashx?key=12

он отлично работает... изображение появляется на странице. но когда я использую ту же ссылку в качестве цели в Thickbox... я получаю это:

http://franceschina.net/temp/thickbox.png

дистиллированная версия ASHX код:


   byte[] img = (byte[])pp.PRODUCT_PHOTO1.ToArray();
   context.Response.ContentType = "image/JPEG";
   context.Response.OutputStream.Write(img, 0, img.Length);

есть идеи, что мне не хватает?


person Nick Franceschina    schedule 26.07.2009    source источник
comment
Я не совсем уверен, что вы можете делать такие вещи локально. Выдает какие-либо ошибки в консоли ошибок? Вы пробовали это на веб-сервере?   -  person Sneakyness    schedule 26.07.2009


Ответы (2)


http://drupal.org/node/140371:

В модуле Thickbox основной файл *.js, Thickbox.js не учитывает URL-адреса изображений, созданные в drupal, например. через /image/view/2321/preview вместо /image.jpg (или *gif или *png). Если Thickbox.js не видит само имя файла (gif, jpg, png, jpeg) в теге привязки ссылки (тег [a href ...]), он будет рассматривать изображение как другой MIME-тип, который не является изображение. Это приводит к тому, что Thickbox выплевывает ужасный мусор поверх вашей страницы вместо классного эффекта теневого ящика (лайтбокса).

Похоже, у вас та же проблема.

person Brother Erryn    schedule 29.07.2009
comment
вау... хорошая работа... это было правильно. Я изменил эти две строки в толстом поле, чтобы добавить расширение .ashx, и это работает! так как это НАСТОЯЩИЙ ответ на вопрос, я приму его... но на самом деле я не собираюсь реализовывать это решение (я собираюсь придерживаться iFrame), потому что я не хочу иметь дело с пользовательским скрипт толстой коробки - person Nick Franceschina; 30.07.2009

ну, в итоге я использовал опцию iframe в ThickBox, чтобы загрузить свое изображение с другой страницы. Мне не нравится это решение (требуется отдельная страница и дополнительный код для определения оптимальной высоты/ширины iFrame)... но оно работает, и у меня больше нет времени возиться с ним.

person Nick Franceschina    schedule 29.07.2009