打算做个图片上传的页面,上传前可以对图片进行预览。在网上找了相关的代码。如下:文件:index.html<SCRIPT   LANGUAGE="JavaScript">   
  <!--   
  function   showimg()   
  {   
                    document.Myform.Myimg.src=document.Myform.filename.value;   
                    //document.Myform.Myimg.width=100;   
                    //document.Myform.Myimg.height=130;   
  } 
  //-->   
  </SCRIPT>
 <FORM   name=Myform   METHOD=POST   ACTION="upload.php" enctype="multipart/form-data">
 <table border=0 cellspacing=10 cellpadding=10 align=center>
 <tr>
 <td width="400"><img src="images/main.png" width="400" height="100"  align="middle" /></td>
 </tr> 
 </table>
 <table border=0 cellspacing=10 cellpadding=10 align=center>
 <tr>
 <td height=20 align="center"> 
 <input type="hidden" name="MAX_FILE_SIZE" value="2000000">
 <span class="STYLE1">Images:</span>  
 <input   name=filename   TYPE="file"   onchange=setTimeout('showimg()',500)>
 <input type="submit" value="Search" name="B1">
 <br> 
 <br> 
 <IMG   name=Myimg   SRC=""   BORDER="0" onmousemove="none">
 </td>
 </tr>
 </table>  
 </FORM>单独预览这个网页是可以显示本地图片的。但是!!!!我把index.html做为我的本地主页访问时,就显示不出来了!!!
以为是appache的原因,又上网找了下,把配置文件里的#EnableSendfile off的井号去掉了,还是不行啊!!到底什么原因呢??请哪位高手指点一下!!!

解决方案 »

  1.   

    参考:http://www.uedsky.com/sky/demo/preview_image_in_file_upload.html 
      

  2.   

    地址居然是:http://127.0.0.1/20090212180652274.jpg!!!不是本地图片的路径!!!
    这应该怎么改啊?
      

  3.   

    第一种:放到部署的项目中,这个很简单;
    第二种:用 servlet 去读(一般都是服务器本地磁盘的图片)
      

  4.   

    要对本地图片进行预览,把图片地址写成绝对路径就可以了。 如: d:/images/xxx.jpg 不过仅限于ie浏览器。 其他浏览器是不可以的。 牵涉到安全问题。一般情况下上传预览功能 都是通过把图片上传到服务器上来实现的。
    可以参考下jquery相关的上传预览功能。
      

  5.   

    你这样的话,只能在IE6下可以预览到本地的,但是在IE8下这样的方式就不能预览到了,主要出于安全性的问题要预览的话,可以参考下面的http://www.cnblogs.com/benz/archive/2009/12/19/1627601.html
      

  6.   

    问题解决了!感谢大家!特别是closewbq和maihao110,提供的正是我想要的!