图像预览无法正常工作


Image preview not working properly

>我有这个代码,它在上传之前显示图像,但它无法正常工作,如果没有设置高度或宽度,它会显示图像,但如果我尝试将高度和宽度固定到相同的尺寸,它无法正常工作

<?php
echo    '<input type="file" id="changeme" name="file" multiple/>
    <div id="output"></div>
    </div>
    <div id="right">
    <script>
    function fileload(e)
    {
        var files=e.target.files || e.dataTransfer.files
        for (var i=0, f; f=files[i]; i++)
        {
            parsefile(f)
        }
    }
    function parsefile(file)
    {
    var reader=new FileReader();
    reader.onload=function (e)
    {
        var output=document.getElementById("output");
        output.innerHTML +="<img src=" + e.target.result + " />";
    }
    reader.readAsDataURL(file); 
    }
    if(window.File && window.FileList && window.FileReader)
    {
        var fileselect=document.getElementById("changeme");
        fileselect.addEventListener("change", fileload);
    }
    </script>';
?>

这种方式工作正常,但是当我在图像标签中输入一些尺寸(如height="50"width="50")时,图像没有显示,我也尝试将CSS用于图像,但它也不起作用。注意:- 由于某些原因,我必须在 php 中使用它

我认为

这是因为您没有将值包装成<img>标签。试试这个:

output.innerHTML +="<img src=''" + e.target.result + "'' style=''width: 50px; height: 50px;'' />";

请注意转义的单引号以避免 PHP echo中出现问题

output.innerHTML +="<img width=''50'' height=''50'' src=" + e.target.result + " />";

对我来说工作得很好。