donglan7594 2013-08-23 05:04
浏览 40
已采纳

为什么我的LAMP堆栈在我使用URL导航到它时显示我的图像但是当我用jQuery和PHP加载它时没有

I have a php file at path/renderer/renderImage.php that builds and returns a PNG image to the browser. When I navigate to that URL with my browser, it dumps the correct image on the screen. But when I try to load that image into a DIV with jQuery using the code below from path/index.html ...

<!DOCTYPE html>
<html>
    <head>
        <meta charset='utf-8'/>
        ....
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
        <script src="../jquery.colorbox.js"></script>
        <script>
            $.colorbox({
                width:"30%", 
                inline:true, 
                href:"#inline_content",
                onClosed: function() {
                    $("#myPic").load('./renderer/renderPicture.php');
                    $('#myPic').css('display','inline');
                }
            });

it fills the DIV with strange symbols...

enter image description here

Here is a picture of the directory structure:

enter image description here

Why is the browser interpreting the picture differently on these two pages? What might cause the discrepancy?

  • 写回答

2条回答 默认 最新

  • dplp5928 2013-08-23 05:09
    关注

    You are getting symbols instead of an image since you are trying to send binary data without specifying what that data is.

    Add header to your renderPicture.php file :

    header('Content-Type: image/png');
    

    And it will return the desired png image.

    Cheers

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?