uploadify插件实现多个图片上传并预览


Posted in Javascript onSeptember 30, 2019

使用uploadify插件可方便实现图片上传功能。兼容ie6、ie7。

上传成功之后使用插件的回调函数读取json数据,根据url实现图片预览。

效果图:

uploadify插件实现多个图片上传并预览

点击浏览文件上传图片,图片依次在右侧显示预览效果。

实现:

json数据格式如下:

uploadify插件实现多个图片上传并预览

页面代码如下:

注:需要引用jQuery.js、uploadify.js、uploadify文件。。uploadify文件下载地址

<html>
<head>
<script type="text/javascript" src="static/js/jquery.js">"></script>
<script type="text/javascript" src="static/js/jquery.select.js">"></script>
</head>
<body>

<div class="file-box"> 
  <div id="divPreview">
   <span style="float:left">(最多可上传五张图片)</span>
  </div>
  <input type="file" name="file" class="file" id="fileField" /> 
  <input type="hidden" name="hash" id="hash" value="xoxo"/> 

</div> 
<script>
$(function() {
 $("#fileField").uploadify({
  'height'  : 30,
  'swf'  : '<?php echoYii::app()->request->baseUrl ?>/static/uploadify/uploadify.swf?var='+(newDate()).getTime(),
  'uploader'  :'index.php?r=upload/uploadimage',
  'width'   : 120,
  'onUploadSuccess' : function(file, data, response) {

   var info = eval("("+data+")");
   if(info.err==1){alert(info.msg);} //如果图片过大或者格式错误弹出错误信息
   else{
   $("#divPreview").append($("<img src='" + info.img + "'/>"));
   $("#divPreview").append($("<input type='hidden' name='imgId[]' value='" + info.imgId + "'/>"));
   }
  },
  'buttonText' : '浏览文件',
  'uploadLimit' : 5, //上传最多图片张数
  'removeTimeout' : 1,
  'preventCaching': true, //不允许缓存
  'fileSizeLimit' : 4100, //文件最大

  'formData'  : { '<?php echosession_name();?>' : '<?php echosession_id();?>','hash':$("#hash").val() } //hash

 });

 $("#SWFUpload_0").css({ //设置按钮样式,根据插件文档进行修改

  'position' :'absolute',
  'top': 20,
  'left': 35,
  'z-index' : 1

  });

});

</script>
</body>
</html>

曾遇到问题:

ie、360浏览器中对json数据检查比较严格,不允许最后一个“,”存在。其它浏览器不会报错,需要注意。

阅读插件文档能力有待提高

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 幻灯片的实现
Dec 06 Javascript
Javascript 实现的数独解题算法网页实例
Oct 15 Javascript
js采用map取到id集合组并且实现点击一行选中一行
Dec 16 Javascript
javascript实例--教你实现扑克牌洗牌功能
May 15 Javascript
理运用命名空间让js不产生冲突避免全局变量的泛滥
Jun 15 Javascript
javascript 面向对象封装与继承
Nov 27 Javascript
javascript浏览器窗口之间传递数据的方法
Jan 20 Javascript
javascript实现动态统计图开发实例
Nov 21 Javascript
Vue.js基础知识汇总
Apr 27 Javascript
JavaScript常见事件处理程序实例总结
Jan 05 Javascript
通过实例学习React中事件节流防抖
Jun 17 Javascript
解决angular 使用原生拖拽页面卡顿及表单控件输入延迟问题
Apr 21 Javascript
vue中使用[provide/inject]实现页面reload的方法
Sep 30 #Javascript
JavaScript中的null和undefined用法解析
Sep 30 #Javascript
vue resource发送请求的几种方式
Sep 30 #Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
Sep 30 #Javascript
bootstrap table实现iview固定列的效果实例代码详解
Sep 30 #Javascript
JavaScript实现图片上传并预览并提交ajax
Sep 30 #Javascript
浅探express路由和中间件的实现
Sep 30 #Javascript
You might like
Yii框架常见缓存应用实例小结
2019/09/09 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
yepnope.js 异步加载资源文件
2011/09/08 Javascript
js改变img标签的src属性在IE下没反应的解决方法
2013/07/23 Javascript
ie8下修改input的type属性报错的解决方法
2014/09/16 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
JS实现自适应高度表单文本框的方法
2015/02/25 Javascript
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
js如何实现淡入淡出效果
2020/11/18 Javascript
JavaScript中获取Radio被选中的值
2015/11/11 Javascript
Bootstrap3 Grid system原理及应用详解
2016/09/30 Javascript
PHP实现记录代码运行时间封装类实例教程
2017/05/08 Javascript
浅谈vuex 闲置状态重置方案
2018/01/04 Javascript
微信小程序如何获取用户手机号
2018/01/26 Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
2018/12/10 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
[01:08:57]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第二场
2014/05/24 DOTA
RC4文件加密的python实现方法
2015/06/30 Python
Anaconda入门使用总结
2018/04/05 Python
Python 使用PIL numpy 实现拼接图片的示例
2018/05/08 Python
python爬取足球直播吧五大联赛积分榜
2018/06/13 Python
更新升级python和pip版本后不生效的问题解决
2020/04/17 Python
python生成word合同的实例方法
2021/01/12 Python
美国最古老的精致书写工具制造商:A.T. Cross(高仕)
2018/01/30 全球购物
外贸销售员求职的自我评价
2013/11/23 职场文书
大学生的网上创业计划书
2013/12/31 职场文书
人力资源作业细则
2014/03/03 职场文书
大学军训感言1500字
2014/03/09 职场文书
安全生产大检查方案
2014/05/07 职场文书
道路施工安全责任书
2014/07/24 职场文书
中职招生先进个人材料
2014/08/31 职场文书
雷锋观后感
2015/06/10 职场文书
《金色的草地》教学反思
2016/02/17 职场文书
《神奇的鸟岛》教学反思
2016/02/22 职场文书
python urllib库的使用详解
2021/04/13 Python
CSS中Single Div 绘图技巧的实现
2021/06/18 HTML / CSS