File文件控件,选中文件(图片,flash,视频)即立即预览显示

翻译|其它|编辑:郝浩|2006-05-08 09:37:00.000|阅读 1435 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>


继续总结项目里的一些小TIP,我们平常用file文件控件上传文件,要预览有时会刷新页面,结果file控件被清空,好多人问能能让他不清空或重新赋值,因为处于安全性的考虑,这是不可能的。那怎么进行无刷新预览呢?这里我把我所使用的方法写一下。
选择页面:

<script language="javascript">
function checkData()
{
    var fileName=document.getElementById("FileUp").value;
    if(fileName=="")
      return;
      //检查文件类型
    var exName=fileName.substr(fileName.lastIndexOf(".")+1).toUpperCase()
       if(exName=="JPG"||exName=="BMP"||exName=="GIF")
        {
           //document.getElementById("myimg").src=fileName;
           document.getElementById("previewImage").innerHTML='<img src=\''+fileName+'\' width=100 height=100 >';
        }
      else
        if(exName=="SWF")
         {
           document.getElementById("previewImage").innerHTML='<embed src=\''+fileName+'\' width=\'100\' height=\'100\' quality=\'high\' bgcolor=\'#f5f5f5\' ></embed>';
          }
      else
         if(exName=="WMV"||exName=="MPEG"||exName=="ASF"||exName=="AVI")
          {
             var strcode='<embed src=\''+fileName+'\' border=\'0\' width=\'100\' height=\'100\'  quality=\'high\' ';
             strcode+=' autoStart=\'1\' playCount=\'0\' enableContextMenu=\'0\' type=\'application/x-mplayer2\'></embed>';
             document.getElementById("previewImage").innerHTML=strcode;
          }
     else
        {
           alert("请选择正确的图片文件");
           document.getElementById("FileUp").value="";
         }
      }
  function openwin()
{
window.open("addPreview.aspx","","height=300,width=345,top=100,left=100");
}

</script>

HTML代码:

<table border="0" cellpadding="0" cellspacing="0" width="100%" height="100%" ID="Table1">
<tr>
<td width="255" height="100%" valign="middle">
<INPUT id="FileUp" style="WIDTH: 253px; HEIGHT: 22px" type="file" size="23" name="File1"
runat="server" onchange="checkData()"><br>
&nbsp;&nbsp;注:这里可以是图片(jpg或gif格式),flash动画(swf)及视频文件(wmv,mpeg,asf,avi)。大小限定在1M以内。
</td>
<td>
<div id="previewImage">当前页预览</div>
</td>
</tr>
</table>

弹出预览页面:

<script language="javascript">
function getstr()
{
    var strcode="";
    var width=100;
    var high=100;
    if(self.opener.document.getElementById("FileUp")!=null)
    {
        //strcode=self.opener.document.getElementById("previewImage").innerHTML;
        width=self.opener.document.getElementById("lblWidth").innerText;
        high=self.opener.document.getElementById("lblHigh").innerText;

        var fileName=self.opener.document.getElementById("FileUp").value;
        var exName=fileName.substr(fileName.lastIndexOf(".")+1).toUpperCase()
        if(exName=="JPG"||exName=="BMP"||exName=="GIF")
            {
                //document.getElementById("myimg").src=fileName;
                strcode='<img src=\''+fileName+'\' width='+width+' height='+high+' >';
            }
        else
            if(exName=="SWF")
            {
                strcode='<embed src=\''+fileName+'\' width=\''+width+'\' height=\''+high+'\' quality=\'high\' ></embed>';
            }
            else
                if(exName=="WMV"||exName=="MPEG"||exName=="ASF"||exName=="AVI")
                    {
                        strcode='<embed src=\''+fileName+'\' border=\'0\' width=\''+width+'\' height=\''+high+'\' quality=\'high\' ';
                        strcode+=' autoStart=\'1\' playCount=\'0\' enableContextMenu=\'0\' type=\'application/x-mplayer2\'></embed>';
                    }

            }
        if(self.opener.document.getElementById("txtADCode")!=null)
            {
                strcode=self.opener.document.getElementById("txtADCode").innerHTML;
            }
        if(strcode!="")
            {
                //window.alert(fileName);
                document.getElementById("showimg").innerHTML=strcode;
            }
}

</script>

显示:

<div id="showimg"></div>
 


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP