产品
解决方案
文档与社区
免费试用
定价
云市场
合作伙伴
支持与服务
了解阿里云
备案
控制台
登录/注册
开发者社区
首页
探索云世界
新手上云
云上应用构建
云上数据管理
云上探索人工智能
云计算
弹性计算
无影
存储
网络
倚天
云原生
容器
serverless
中间件
微服务
可观测
消息队列
数据库
关系型数据库
NoSQL数据库
数据仓库
数据管理工具
PolarDB开源
向量数据库
热门
Modelscope模型即服务
弹性计算
云原生
数据库
物联网
云效DevOps
龙蜥操作系统
平头哥
钉钉开放平台
大数据
大数据计算
实时数仓Hologres
实时计算Flink
E-MapReduce
DataWorks
Elasticsearch
机器学习平台PAI
智能搜索推荐
人工智能
机器学习平台PAI
视觉智能开放平台
智能语音交互
自然语言处理
多模态模型
pythonsdk
通用模型
开发与运维
云效DevOps
钉钉宜搭
支持服务
镜像站
码上公益
问产品
动手实践
考认证
TIANCHI大赛
活动广场
任务中心
飞天Club技术沙龙
训练营
话题
开发者评测
乘风者计划
阿里云MVP
直播
下载
镜像站
技术资料
插件
开发者社区
开发与运维
文章
正文
File文件控件,选中文件(图片,flash,视频)即立即预览显示
2017-11-26
1218
版权
版权声明:
本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《
阿里云开发者社区用户服务协议
》和 《
阿里云开发者社区知识产权保护指引
》。如果您发现本社区中有涉嫌抄袭的内容,填写
侵权投诉表单
进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
简介:
+关注继续查看
继续总结项目里的一些小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
>
注:这里可以是图片(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
>
上传图片时实现即时预览
解决方法:
<
script
language
="javascript"
>
function
showimg()
{
document.all(
"
image1
"
).src
=
document.all(
"
upfile
"
).value;
}
</
script
>
…… ……
<
input
type
="file"
id
="upfile"
name
="upfile"
runat
="server"
onpropertychange
="showimg()"
>
<
asp:Image
id
="Image1"
style
="…… ……"
runat
="server"
></
asp:Image
>
本文转自高海东博客园博客,原文链接:http://www.cnblogs.com/ghd258/archive/2005/12/03/290031.html,如需转载请自行联系原作者
文章标签:
JavaScript
内存技术
前端开发
老朱教授
目录
相关文章
greework
|
3月前
|
Windows
【Windows】显示缩略图非图标/开启缩略图
【Windows】显示缩略图非图标/开启缩略图
greework
33
0
0
技术君
|
区块链
如何修改 pdf 文件默认的显示图标
如何修改 pdf 文件默认的显示图标
技术君
548
0
0
wdwwkb672hoqk
video 预览图 -去掉下载和全屏按钮
谷歌浏览器版本是54.0-57.0之间,并且也出现了视频右下角有按钮的情况都可以使用下面的代码。
wdwwkb672hoqk
202
0
0
y2hr4cjzssnlm
Qt把当前窗口的内容保存为一张图片
Qt把当前窗口的内容保存为一张图片
y2hr4cjzssnlm
314
0
0
asing1elife
video标签隐藏下载按钮
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82796580 ...
asing1elife
1644
0
0
李一花
|
JavaScript
前端开发
安全
扩展EasyUI在页面中马上显示选中的本地图片
在编写前台页面的时候,有时须要将选中的图片夹杂着其它信息一起上传到服务端,在选着本地图片的时候,为了获得更好的效果,须要将该图片显示在页面上。
李一花
2376
0
0
杰克.陈
|
C#
WPF 鼠标在图片Image上悬停时切换更改设置图片源Source
// 无效的写法,图片不会被切换 ...
杰克.陈
2207
0
0
云栖希望。
|
内存技术
纯AS代码flash实现预览上传本地图片功能
云栖希望。
1194
0
0
余二五
win7桌面上图标的后缀名隐藏、不显示隐藏格式文件
余二五
930
0
0
老朱教授
|
Windows
内存技术
MS Project打开无法显示/服务的扩展不能打开:提示一个或多个ActiveX控件无法显示
老朱教授
1299
0
0
热门文章
最新文章
1
全球最大成人网站YouPorn推出漏洞悬赏计划:最高可获25000美元
2
从零入门 Serverless | 一文详解 Serverless 架构模式
3
iphoneX都面世了,你的数据仓库还停留在诺基亚时代吗?
4
《企业大数据系统构建实战:技术、架构、实施与应用》一2.4 本章小结
5
浅谈Java中的对象和对象引用
6
MySQL抑制binlog日志中的BINLOG部分
7
酷派新品发布会将揭开酷派D550的神秘面纱
8
铭记留不住的青春
9
linux内核网络接收数据流程图【转】
10
没有#!的bash脚本的执行
1
Unix后记&寻找Shen Lin
47
2
压缩算法---以golang/snappy为例
33
3
链表问题汇集
40
4
MySQL长文本字段的选取
35
5
数组问题汇集
28
6
栈和队列问题汇集
26
7
Linux内核分析与应用9-设备驱动
45
8
Linux内核分析与应用8-文件系统
34
9
不用任何比较运算符找出两个整数中的较大的值
33
相关产品
云迁移中心
文档详情
产品详情
相关电子书
更多
低代码开发师(初级)实战教程
阿里巴巴DevOps 最佳实践手册
冬季实战营第三期:MySQL数据库进阶实战
推荐文章
更多
重磅来袭!参与评测赢Iphone14 pro!
文件存储NAS评测征集令!
招募!寻找技术人的伯乐!
乘风者计划邀您入驻社区,精彩权益即刻享
下一篇
部署并使用Docker(CentOS 8)