<script language="javascript" type="text/javascript">
        function ShowImg(fuImg)
        {
            var image = document.getElementById("ImgUser");
            image.src = fuImg.value;
        }
        function CheckImgType()
        {
            var obj = document.getElementById("fuImage");
            if(obj.value == '')
            {
                alert("请选择上传的图片!");
                return false;
            }
            var fileContentType = obj.value.match(/~(.*)(\.)(.{1,8})$/)[3];
            fileContentType=fileContentType.toLowerCase();
            if(fileContentType=='gif'||fileContentType=='png'||fileContentType=='jpg'||fileContentType=='bmp')
            {
                return true;
            }
            else
            {
                alert("文件格式不正确!");
                obj.value="";
                return false;
            }
        }
    </script>
---------------------------------------------------------------------
以上是客户端的验证代码,为了判断图片格式是否正确以及给Image控件赋值----------------------------------------------------------------------
<tr>
     <td style="width: 117px; text-align: right">选择图片</td>
      <td style="width: 83px">
          <asp:FileUpload ID="fuImage" runat="server" Onchange="ShowImg(this)" /></td>
       <td style="width: 127px"></td>
</tr>
<tr>
      <td colspan="3" style="height: 32px">
          <asp:Button ID="btnAdd" runat="server" OnClick="btnAdd_Click" Text="添加" Width="59px" />
          <asp:Button ID="btnReset" runat="server" Text="重填" Width="59px" CausesValidation="False" />
          <asp:Button ID="btnBack" runat="server" CausesValidation="False" OnClick="btnBack_Click"Text="返回" Width="63px" /></td>
</tr>
--------------------------------------------------------------------------
我点击返回或重填按钮,它也会提示要选择图片,怎么去让他不响应这个JavaScript验证呢?

解决方案 »

  1.   

    jquery 表单验证
      

  2.   

    关键是这句:if(obj.value == '')
      {
      alert("请选择上传的图片!");
      return false;
      }
    你点重填以后,fileupload空间置空了,就会出这个提示,你可以尝试把ShowImg函数里的这个判断去掉,写进btnAdd按钮的客户端事件里。
      

  3.   

    那样肯定可以,但是我想浏览图片就能及时看到你选择的图片,不用JQuery怎么去实现呢?
      

  4.   

    可以用滤镜做图片预览,但只支持IE6,7,8和火狐3.X
    由于浏览器兼容性问题,想实时预览图片,需要通过其他方式了,比如flash。