-
C#教程之C#实现图片上传与浏览切换的方法
本文以一个完整实例讲述了C#实现图片上传与浏览切换的方法,对于进行C#程序设计来说具有一定的借鉴价值。分享给大家供大家参考。
具体实现代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> < head runat = "server" > < title >无标题页</ title > < script src = "js/jquery-1.7.2.js" type = "text/javascript" ></ script > < script src = "js/jquery-1.7.2.min.js" type = "text/javascript" ></ script > < script type = "text/javascript" > $(document).ready(function() { $('.upic').change(function() { var filename = $(this).val().replace(/.*(\/|\\)/, ""); //文件名 var fileExt = (/[.]/.exec(filename)) ? /[^.]+$/.exec(filename.toLowerCase()) : ''; //后缀名 if (fileExt != "jpeg" && fileExt != "jpg" && fileExt != "gif" && fileExt != "png") { alert('请选择一个jpg或gif的图片文件'); return; }; $(this).parent().parent().parent().addClass('support'); if ($.browser.msie) { if ($.browser.version == "6.0") { $(this).parent().parent().siblings(".preview").html('< img style = "height:auto;width:88px;" src = "' + $(this).val() + '" />'); } else { var previewDiv = $(this).parent().parent().siblings(".preview"); previewDiv.css({ filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image)" }); previewDiv[0].filters.item("DXImageTransform.Microsoft.AlphaImageLoader").sizingMethod = "scale"; try { previewDiv[0].filters.item('DXImageTransform.Microsoft.AlphaImageLoader').src = getPath($(this)[0]); } catch (e) { alert(e.name + ": " + e.message); alert("无效的图片文件!"); return; } } } else { //var data=$(this)[0].files.item(0).getAsDataURL(); var data = window.URL.createObjectURL($(this)[0].files[0]); $(this).parent().parent().siblings(".preview").html('< img style = "height:auto;width:88px;" src = "' + data + '" />'); return; } $(this).parent().parent().parent().mouseover(function() { $(this).addClass('hover'); }).mouseout(function() { $(this).removeClass('hover'); }); }); $('.del').click(function() { $(this).parent().siblings("[name='isDel']").val("1"); var file = $(this).parent().siblings(".upload").children().children(".upic"); file.after(file.clone(true).val("")).remove(); $(this).parent().siblings(".preview").after('< div class = "preview" ></ div >').remove(); //$(this).parent().siblings(".preview").empty(); $(this).parent().parent().removeClass('support').mouseout().unbind('mouseover'); }); if ($.browser.msie) { $('#memberPhoto').filter('.support').mouseover(function() { $(this).addClass('hover'); }).mouseout(function() { $(this).removeClass('hover'); }); }; //获得上传控件的值,obj为上传控件对象 function getPath(obj) { if (obj) { if (window.navigator.userAgent.indexOf("MSIE") >= 1) { obj.select(); document.getElementById("btnSave").focus(); //hack for IE9下,如果file控件获得焦点,则document.selection.createRange()拒绝访问 return document.selection.createRange().text; } else if (window.navigator.userAgent.indexOf("Firefox") >= 1) { if (obj.files) { return obj.files.item(0).getAsDataURL(); } return obj.value; } return obj.value; } } }); </ script > </ head > < body > < form id = "form1" runat = "server" > < div id = "pic" > < div id = "memberPhoto" style = "position: relative" > <%if (!string.IsNullOrEmpty(imagePath)) {%> < div class = "preview" > < img src="../<%=imagePath%>" style="height: auto; width: 88px;" /></ div > <%} else {%> < div class = "preview" > </ div > <%}%> < div class = "upload" > < a class = "a-sc" href = "javascript:;" > < input id = "imageUpload" class = "upic" type = "file" name = "upic" runat = "server" /> </ a > </ div > < div class = "act" > < span class = "del" >删除</ span > </ div > </ div > </ div > </ form > </ body > </ html > |
1
2
3
4
5
6
7
8
|
public partial class Default3 : System.Web.UI.Page { public string imagePath = "" ; protected void Page_Load( object sender, EventArgs e) { } } |
希望本文实例对大家的C#程序设计有所帮助。
栏目列表
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比