图片上传浏览的代码:
<script type="text/javascript">
function viewmypic(mypic,imgfile) {
if (imgfile.value){
mypic.src=imgfile.value;
mypic.style.display="";
mypic.border=1;
}
}
</script>
<asp:FileUpload ID="FileUpload1" onchange="viewmypic(imgID1,this.form.FileUpload1)" runat="server" /><br/>
<asp:Image ID="imgID1" runat="Server" Style="display:none" />
IE7下上传图片时显示图片没问题,IE8显示图片就是个X了,请高手帮忙看下怎么解决,谢谢
<script type="text/javascript">
function viewmypic(mypic,imgfile) {
if (imgfile.value){
mypic.src=imgfile.value;
mypic.style.display="";
mypic.border=1;
}
}
</script>
<asp:FileUpload ID="FileUpload1" onchange="viewmypic(imgID1,this.form.FileUpload1)" runat="server" /><br/>
<asp:Image ID="imgID1" runat="Server" Style="display:none" />
IE7下上传图片时显示图片没问题,IE8显示图片就是个X了,请高手帮忙看下怎么解决,谢谢
<!-- Use IE7 mode -->
<meta http-equiv="X-UA-Compatible" c />
<title>我的网页</title>
</head>
这样,可强制所设计网页在IE7的模式下显示,解决了兼容性问题。 也有可能,ie改进了,其实图片是显示出来了,但是没有在屏幕范围之内,楼主可以设置适当的left,top试试
只能通过滤镜来解决
<div><img/>
</div>然后把div的DOM对象取出来
div的DOM对象.filters.item('DXImageTransform.Microsoft.AlphaImageLoader').src = imgSrc;用了这种做法仍然无解的地方:
由于IE8加强了安全性
1.选择完 文件后,文件控件上可能会显示c:/fakepath/文件名。这样会使你的imgSrc取不到正确的path
2.由于没有设置受信任的站点,所以滤镜无法显示。这两点都必须手动改客户端。所以让IE8在做这个效果的时候无解。
除了IE8下,还有chrome也是一样。无法取得文件的真实path
ie7 8都是不行的要用滤镜
具体可以参考这个图片预览效果
你没仔细看吧滤镜数据获取程序:this.file.select();
try{
return document.selection.createRange().text;
} finally { document.selection.empty(); }
一般用在ie7/8,在file控件select后再通过selection对象获得文件本地路径。
c:/fakepath/ IE8搜索。document.selection.createRange().text无法取得正确路径