首页 > 技术文章 > 无刷新预览所选择的图片(转载)

xiyangtianshi 2014-04-08 17:01 原文

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

 
 

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>

    <script type="text/javascript">
        //本地图片预览
        function setimagepreview(fieldupload, image, imagediv) {
            var docobj = document.getElementById(fieldupload);
            var imgobjpriview = document.getElementById(image);
            if (docobj.files && docobj.files[0]) {
                // 火狐下直接设img属性
                imgobjpriview.style.display = 'block';
                imgobjpriview.style.width = '150px';
                imgobjpriview.style.height = '150px';
                //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式       
                imgObjPreview.src = window.URL.createObjectURL(docobj.files[0]);
            }
            else {
                //IE下,使用滤镜                       
                docobj.select();
                var imgSrc = document.selection.createRange().text;
                var localImagId = document.getElementById(imagediv);
                //必须设置初始大小                       
                localImagId.style.width = "150px";
                localImagId.style.height = "150px";
                //图片异常的捕捉,防止用户修改后缀来伪造图片
                try {
                    localImagId.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)"; localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
                } catch (e) {
                    alert("您上传的图片格式不正确,请重新选择!");
                    return false;
                }
                imgobjpriview.style.display = 'none';
                document.selection.empty();

 


            }
            return true;
       
       
        }
   
   
   
   
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <div id="localimage">
    <img id="preview" width="150px" height="150px" src="" alt="" />


 <input type="file" onchange="javascript:setimagepreview('upload','preview','localimage');"id="upload" />
   
    </div>

 


    </div>
    </form>
</body>
</html>

推荐阅读