<script type="text/javascript">
        function CheckImg(FileUpload) {            var img = FileUpload.value;            img = img.toLowerCase().substr(img.lastIndexOf("."));            if (img != ".jpg" && img != ".bmp" && img != ".gif" && img != ".psd") {
                FileUpload.value = "";
                alert("只能上传图片!");
            } else {                
                document.getElementById("Image1").src = FileUpload.value;
            }
        }
    </script>
  <asp:Image ID="Image1" runat="server" /><asp:FileUpload ID="FileUpload1" runat="server" Height="19px" Width="327px" onchange="CheckImg(this)" />
代码如上, 使用 FileUpload.value 只能获取图片名, 如何获取图片的全路径 请教请教 

解决方案 »

  1.   

    http://www.cnblogs.com/chenou/articles/1164173.html
      

  2.   

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="web_admin_test" %><html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title></title>    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>    <script>
          
        </script>    <style type="text/css">
            #newPreview
            {
                filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);
            }
        </style>
    </head>
    <body>
        <form id="form1" runat="server">    <script language="javascript" type="text/javascript">
        function PreviewImg(imgFile) {        alert("ddd");
         var newPreview = document.getElementById("newPreview");
          newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile.value;
          newPreview.style.width = "80px";
           newPreview.style.height = "60px";
           newPreview.style.display="inline";
            }
           
        </script>    <asp:FileUpload ID="Fud_Pic" runat="server" onchange="PreviewImg(this)" />
        <div id="newPreview" style="float: left; position: absolute;">
        </div>
        </form>
    </body>
    </html>用以上代码试了一下, 还是不行
      

  3.   

    出现这个问题是ie7之后的默认设置导致的。修改设置参见http://www.junstyle.com.cn/upload/fakepath.png
      

  4.   

    http://yaoliceng.spaces.live.com/blog/cns!A86E751B530B1BF4!524.entryjs获取上传图片全路径,支持ie,firefox
          在ie6中对于<input type="file" />通过obj.value是可以获取客户端选择文件的全路径的,但是到ie7就只能获取文件名,这对于onchange事件立即显示图片会有问题,可以用js方法解决 <html>
        <head>
            <title>get file input full path</title>
        <script language='javascript'>
            function getFullPath(obj)
            {
                if(obj)
                {
                    //ie
                    if (window.navigator.userAgent.indexOf("MSIE")>=1)
                    {
                        obj.select();
                        return document.selection.createRange().text;
                    }
                    //firefox
                    else if(window.navigator.userAgent.indexOf("Firefox")>=1)
                    {
                        if(obj.files)
                        {
                            return obj.files.item(0).getAsDataURL();
                        }
                        return obj.value;
                    }
                    return obj.value;
                }
            }
        </script>
        </head>
        <body>
            <input type="file" onchange="document.getElementById('img').src=getFullPath(this);" />
        <img id="img" />
        </body>
    </html>