以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  图片尚未保存到服务器时如何实现预览?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=71108)


--  作者:lilyzhenli
--  发布时间:1/4/2009 12:12:00 PM

--  图片尚未保存到服务器时如何实现预览?
asp.net程序,其中用到了XML+XSL生成HTML的技术,想在这个HTML页实现图片预览功能(注:图片尚未保存到服务器),试了一些方法后仍不得要领,大家帮帮忙吧。下面是我的代码

xsl:
  <img src="" id="img1"/>
  <input type="file" name="{$CurKey}" id="{$CurKey}" onchange="document.all.img1.src='file:///'+this.value"/>


--  作者:hexun831012
--  发布时间:1/4/2009 10:48:00 PM

--  
这其实是HTML和DOM的问题,和XSL无关,按模版输出就好了
--  作者:ioyichen
--  发布时间:1/10/2009 1:45:00 PM

--  
这个是不可能实现的,除非你上传到服务器,才能预览图片,浏览器是有安全限制的,ie有的版本可以,firefox直接就是不能
--  作者:lilyzhenli
--  发布时间:1/15/2009 12:54:00 PM

--  
谢谢回复信息的人,那个问题已经解决了,我用了一个div,
   
        <input type="file" name="{$$CurKey}" id="{$CurKey}" onchange="SetImg(this) "/>
        <div id="$CurKey}_div" style="filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image)">
        </div>


function SetImg(opt){
              var v=opt.value;
              if(v!=null &amp;&amp; v!=""){
                  var val=v.substring(v.lastIndexOf('.')+1,v.length).toLowerCase();
                   if(val != "jpg" &amp;&amp; val != "gif" &amp;&amp; val != "png" )
                  {
                      opt.focus();opt.value="";
                      alert("只能上传JPG、GIF、PNG格式的图片。");
                  }
                  else{
                      var dimg=document.getElementById(opt.id+"_div");
                      dimg.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = v;
                      dimg.style.width = 40;
                      dimg.style.height = 40;
                      dimg.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").sizingMethod = 'scale';
                  }
              }
            }


--  作者:Qr
--  发布时间:1/15/2009 1:57:00 PM

--  
看代码应该不支持firefox哦,使用MS的filters。
--  作者:hexun831012
--  发布时间:1/18/2009 12:55:00 PM

--  
谢谢QR帮我盯着,我最近忙IETLS去了
--  作者:Qr
--  发布时间:1/18/2009 6:05:00 PM

--  
以下是引用hexun831012在2009-1-18 12:55:00的发言:
谢谢QR帮我盯着,我最近忙IETLS去了


偶经常打沙枪的:)
--  作者:lilyzhenli
--  发布时间:1/21/2009 11:43:00 AM

--  
楼上的有什么更好的办法吗?先谢谢啦!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
63.965ms