swfupload多图上传插件(ASP.NET)
<script src="../js/swfupload/swfupload.js" type="text/javascript"></script>
<script src="../js/swfupload/swfupload.queue.js" type="text/javascript"></script>
<script src="../js/swfupload/fileprogress.js" type="text/javascript"></script>
<script src="swfMgr/handlers.js" type="text/javascript"></script>
<tr <%=tp_addList %> id="tp_addList">
<td class="left_title_2" width="100px">
上传图片列表:
</td>
<td id="Td1">
<%--上传多个图片--%>
<div align="left">
<input id="middleImg" /><span style="color: Red;">注明:图片以(655*500),单个文件最大5000KB;默认设置最后一张为首页图片,图片名不能重复,一张张按照顺序上传</span>
<p id="fileQueue2" style="width: 320px; margin: 0 auto;">
</p>
<ul id="ulList">
</ul>
</div>
</td>
</tr>
<asp:HiddenField ID="hidStr" runat="server" Value="" />
<asp:HiddenField ID="hidFolder" runat="server" Value="0" />
<script type="text/javascript">
var tmpFolder = $("#hidFolder").val();
var tmpNum = 0;
var tmpTotal = 0;
function uploadSuccessOther(file, serverData) {
try {
var progress = new FileProgress(file, this.customSettings.upload_target);
progress.setComplete();
progress.setStatus("正在上传!");
progress.toggleCancel(false);
} catch (ex) {
//alert(ex.message);
}
//成功后,处理
$("#ulList").append('<li><table><tbody><tr><td><img width="100" src="../../img/' + tmpFolder + '/100/' + serverData + '"></td></tr><tr><td><label><input type="radio" class="setIndex" style="margin-right: 5px;" name="rdo" value="' + serverData + '">首页显示</label> <a style="color: Red;" href="javascript:;" class="delImg">删除</a></td></tr></tbody></table></li>');
$("#info_tp_add").val(serverData); //隐藏图片路径
tmpTotal += 1;
if (tmpNum == tmpTotal) {
$(".ajaxloading").hide();
window.onbeforeunload = function() { };
$(".saveClass").removeAttr("disabled", "disabled");
}
}
function fileDialogCompleteOther(numFilesSelected, numFilesQueued) {
try {
tmpNum = parseInt(numFilesQueued);
if (tmpNum > 0) {
this.startUpload();
$("#divLoading").css({ height: $(window).height() + 150 + tmpNum * 50 });
$(".ajaxloading").css({ top: $(window).scrollTop() + 150 }).show();
// $(".saveClass").attr("disabled", "disabled"); //在上传过程中将保持按钮禁用
// window.onbeforeunload = function() { return ("确认离开当前页面吗?未保存的数据将会丢失!"); }
} else {
}
} catch (ex) {
//this.debug(ex);
}
}
//
var swfMiddle;
window.onload = function() {
swfMiddle = new SWFUpload({
// Backend Settings
upload_url: "swfMgr/Handler.ashx",
post_params: {
'ASPSESSID': '<%=Session.SessionID %>',
'Folder': tmpFolder,
't': 'i'
},
// File Upload Settings
file_size_limit: "5000",
file_types: "*.jpg;*.png",
file_types_description: "JPG,PNG",
file_upload_limit: 0, // Zero means unlimited
swfupload_preload_handler: preLoad,
swfupload_load_failed_handler: loadFailed,
file_queue_error_handler: fileQueueError, //队列错误
file_dialog_complete_handler: fileDialogCompleteOther,
upload_progress_handler: uploadProgress,
upload_error_handler: uploadError,
upload_success_handler: uploadSuccessOther,
upload_complete_handler: uploadComplete,
// Button settings
button_image_url: "../js/swfupload/buttons/XPButtonNoText_61x22.png",
button_placeholder_id: "middleImg",
button_width: 61,
button_height: 22,
button_text: '<span class="button">添加图片<span class="buttonSmall"></span></span>',
button_text_style: '.button { font-family: Helvetica, Arial, sans-serif; font-size: 12px;font-weight:bold;} .buttonSmall { font-size: 12px; }',
button_text_top_padding: 1,
button_text_left_padding: 5,
button_cursor: SWFUpload.CURSOR.HAND,
button_window_mode: SWFUpload.WINDOW_MODE.TRANSPARENT,
// Flash Settings
flash_url: "../js/swfupload/swfupload.swf", // Relative to this file
flash9_url: "../js/swfupload/swfupload_FP9.swf", // Relative to this file
custom_settings: {
upload_target: "fileQueue2"
}
//图片上传
});
}
</script>
<script type="text/javascript">
$(function() {
//删除该上传图片
$(document).delegate(".delImg", "click", function() {
if ($(this).prev().find("input").attr("checked")) {
alert('已经设置首页的图片无法删除!');
return false;
}
if (!confirm("确定要删除这张图片吗?")) return false;
var tmpLi = $(this).parents("li").eq(0);
$.post("swfMgr/fileMgr.ashx", {
t: "del",
f: $("#hidFolder").val(),
n: $(this).prev().find("input").val()
}, function(rdata) {
if (rdata = "1") {
tmpLi.remove();
}
});
});
//首页显示
$(document).delegate(".setIndex", "click", function() {
var value = $(this).val();
if (!confirm("确定要设置这张图片首页显示吗?")) return false;
$("#info_tp_add").val(value); //确定保存后隐藏图片路径
});
});
</script>
效果图:

swfupload多图上传插件(ASP.NET)的更多相关文章
- Vue的移动端多图上传插件vue-easy-uploader
原文地址 前言 这段时间赶项目,需要用到多文件上传,用Vue进行前端项目开发.在网上找了不少插件,都不是十分满意,有的使用起来繁琐,有的不能适应本项目.就打算自己折腾一下,写一个Vue的上传插件,一劳 ...
- Bootstrap FileInput 多图上传插件 文档属性说明
Bootstrap FileInput 多图上传插件 原文链接:http://blog.csdn.net/misterwho/article/details/72886248?utm_source ...
- yii2组件之多图上传插件FileInput的详细使用
作者:白狼 出处:http://www.manks.top/yii2_multiply_images.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连 ...
- SWFUpload多图上传、C#后端跨域传文件带参数
前几天工作中用到了SWFUpload上传图片,涉及到跨域,因为前端无法实现跨域,所以只能把文件传到后端进行跨域请求,整理分享下. 效果图 前端 html部分 <!DOCTYPE html> ...
- 帝国CMS7.2新增多图同时上传插件,上传多图效率更高
原来上传多图文件,需要挨个选择文件,然后再点批量上传,比较麻烦.所以帝国CMS7.2新增了多图上传插件:为采用FLASH方式实现同时选择多个图片一起上传,提高多图上传效率. 帝国CMS多图上传插件特性 ...
- PHP之:多图上传
撰写日期:2016-6-30 15:17:35 Thursday 参考 http://a3147972.blog.51cto.com/2366547/1381136 (08-05ThinkPHP+sw ...
- SWFUpload批量上传插件
SWFUpload是一个批量上传插件,在HTML4.1里面,估计也只有Flash+javascript配合才能够做到了.先复制个重要的网址,这个应该是官方的文档了,相当齐全. http://leeon ...
- 封装Web Uploader 上传插件、My97DatePicker、百度 编辑器 的使用 (ASP.NET MVC)
Web Uploader: WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件.在现代的浏览器里面能充分发挥HTML5的优 ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(32)-swfupload多文件上传[附源码]
系列目录 文件上传这东西说到底有时候很痛,原来的asp.net服务器控件提供了很简单的上传,但是有回传,还没有进度条提示.这次我们演示利用swfupload多文件上传,项目上文件上传是比不可少的,大家 ...
随机推荐
- 信号处理——Hilbert端点效应浅析
作者:桂. 时间:2017-03-05 19:29:12 链接:http://www.cnblogs.com/xingshansi/p/6506405.html 声明:转载请注明出处,谢谢. 前言 ...
- zBase --轻量级DOM操作库
项目地址:ZengTianShengZ-github zBase-1.2.0 --v3 修复部分bug,添加AMD规范测试 zBase-1.1.0 --v2 对 v1 版本做了升级,优化DOM查找,简 ...
- 前端面试题总结:HTML5,JS,CSS3,兼容性。
1. 请写出至少20个HTML5标签 <article><aside> <audio><video> <canvas><datalis ...
- WebApi接口请求失败,找不到资源。
WebApi开发接口,实现同步数据库的数据给安卓. public class UserInfoController : ApiControllerBase { private UserBLL user ...
- oracle expdp和impdp常用命令选项
一.expdp导出数据库 1.按用户导出 expdp scott/tiger@orcl DIRECTORY=oracle_dmp dumpfile=bak.dmp schemas=scott vers ...
- Servlet 与 Ajax 交互一直报status=parsererror
原因:servlet 返回的数据不是 Json 格式 1.JS代码为: var jsonStr = {'clusterNum':2,'iterationNum':3,'runTimes':4}; $. ...
- 浅析Content Negotation在Nancy的实现和使用
背景介绍 什么是Content Negotation呢?翻译成中文的话就是"内容协商".当然,如果不清楚HTTP规范(RFC 2616)的话,可以对这个翻译也是一头雾水. 先来看看 ...
- Boost库安装(实测vs2012)
1.下载boost库,我这边下载的是目前最新的:boost_1_63_0.7z 2.解压到本地目录:我这边是:D:\Program Files 3.cmd窗口,以管理员权限打开,执行D:\Progra ...
- C—动态内存分配之malloc与realloc的区别
在程序的执行期间分配内存时,内存区域中的这个空间称为堆(heap).还有另一个内存区域,称为堆栈(stack),其中的空间分配给函数的参数和本地变量.在执行完该函数后,存储参数和本地变量的内存空间就会 ...
- Java 异常处理 try catch finally throws throw 的使用和解读(一)
//最近的一个内部表决系统开发过程中,//发现对异常处理还存在一些模棱两可的地方,//所以想着整理一下//主要涉及到://1.try catch finally throws throw 的使用和解读 ...