上传图片附件显示缩略图(2 位领导批示)

刚开始以为很容易解决.写js嘛..-_,-+


< i nput type="file" onchange="document.getElementById('showimg').src=this.value;" />

然而本地测试成功的代码上传到服务器上就出现了错误..空格被自动转义成为了%20

无语ing….囧..

不过总算找到一个BT的方法..用CSS中的AlphaImageLoader滤镜 -_!!

AlphaImageLoader滤镜的使用方法就不做说明..自己查下手册

AlphaImageLoader滤镜的src属就是其中的主角 它将使用绝对或相对url地址指定背景图像。假如忽略此参数,滤镜将不会作用。

放出代码

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title></title>
  6. <style type="text/css">
  7. #picshow
  8. {
  9.     filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);
  10.     width:88px;
  11.     height:125px;
  12. }
  13. </style>
  14. <script type="text/javascript" language="javascript">
  15. <!--
  16. function upimg(imgFile)
  17.     var picshow = document.getElementById("picshow");
  18.     picshow.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile.value;
  19.     picshow.style.width = "88px";
  20.     picshow.style.height = "125px";
  21. }
  22. -->
  23. </script>
  24. </head>
  25. <body>
  26. <div id="picshow"></div>
  27.  
  28. <p>选择图片:<input type="file" size="20" onchange="upimg(this);" /></p>
  29. </body>
  30. </html>

DEMO







选择图片:


可惜的是FF不支持..SO这也不是最好的解决方法..

中华英才网上的ajax异步提交才是正解..可是那个需要进入表单时就会分配当前表单一个唯一的ID..而我做的功能上不能达到..只有暂舍FF..也许不久能找到更好的办法..

分享到新浪微博 推荐到豆瓣 分享到 Google Reader 加入Google书签 嘀咕一下 分享到饭否 分享到做啥 分享到叽歪 分享到鲜果 加入QQ书签 加入百度搜藏 加入雅虎书签 分享到垦一垦

  1. 2
    银子

    @修行的魔法师 这个图片本身是要上传到服务器的..

    我的想法是用AJAX异步调用..当file input触发onchange事件时回调服务器上图片的路径..没这么做的原因是数据的处理有一定问题,我在考虑怎么才能有唯一的键值来保证数据不会重复或插入错误..

    谢谢你的建议..

  2. 1
    修行的魔法师

    FF 由于安全原因,不允许访问本地文件,可以考虑将图片上传到服务器临时目录以提供预览。

请领导指示

验证码 (必须)

Additional comments powered by BackType

随机显示的10篇日志

评论最多的10篇日志

浏览最多的10篇日志